Non Compartmental Analysis

One of the main feature of PKanalix is the calculation of the parameters in the Non Compartmental Analysis framework.



NCA task

There is a dedicated task in the “Tasks” frame as in the following figure.
This task contains two different parts.

  • The first one called “Run” corresponds to calculation button and the settings for the calculation and the acceptance criteria. The meaning of all the settings and their default is defined here.
  • The second one allows to define the global settings impacting the calculation of \(\lambda_z\) (explained here) and the individual choice of measurements for the \(\lambda_z\) calculation (explained here) along with the vizualization of the regression line on each subject



NCA results

When computing of the NCA task is performed, it is possible to have the results in the “Results” frame. Two tables are proposed.


Non compartmental analysis results per individual

Individual estimates of the NCA parameters are displayed in the table in the tab  “INDIV. ESTIM.” part as in the following figure

All the computed parameters depend on the type of observation and administration. All the parameters are described here. Notice that on all tables, there is an icon on the top right to copy the table in a word or an excel file (purple frame).


Summary statistics on NCA results

A summary table is also proposed in the tab “SUMMARY” as in the following figure. All the summary calculation is described here.

The summary table can be split and filtered according to the categorical and continuous covariates tagged in the data set and the acceptance criteria defined in the NCA settings:

  • Split by covariates: The values of the split covariates and criteria are displayed in the first columns of the summary table (blue highlight). The order of these columns corresponds to the order of the clicks to setup the splitting covariates (orange highlight). Continuous covariates can be discretized into groups by defining the group limits (yellow highlight), and categorical covariates categories can be grouped together.
    It is currently not possible to split the table in several subtables (instead of splitting the rows), nor to choose the orientation of the table (NCA parameters as columns for instance).
  • Filter by acceptance criteria: parameter values from subjects that do not meet the acceptance criteria can be removed from the calculations used in the summary table.

    Read details on filtering rules

    • When filtering by the “% extrapolated AUC” criterion, values from subjects that do not meet the criterion are excluded for the following parameters: [AUCINF_obs, AUCINF_pred, AUCINF_D_obs, AUCINF_D_pred, AUC_PerCentExtrap_obs, AUC_PerCentExtrap_pred, Vz_obs, Vz_pred, Vz_F_obs, Vz_F_pred, Cl_obs, Cl_pred, Cl_F_obs, Cl_F_pred, AUMCINF_obs, AUMCINF_pred, AUMC_PerCentExtrap_obs, AUMC_PerCentExtrap_pred, MRTINF_obs, MRTINF_pred, Vss_obs, Vss_pred, AURC_INF_obs, AURC_INF_pred, AURC_PerCentExtrap_obs, AURC_PerCentExtrap_pred].
    • When filtering by the “Adjusted R2” or “Span” criteria, all parameters in the previous list are similarly impacted, as well as the additional following parameters: [Rsq, Rsq_adjusted, Corr_XY, Lambda_z, Lambda_z_intercept, Lambda_z_lower, Lambda_z_upper, HL_Lambda_z, Span, Clast_pred, No_points_lambda_z, AUC_PerCentBack_Ext_obs, AUC_PerCentBack_Ext_pred, Rate_last_pred].
    • The following parameters are not impacted by the filtering: [AUC_T1_T2 AUC_T1_T2_D, AUC_TAU, AUC_TAU_D, AUC_TAU_PerCentExtrap, AUCall, AUClast, AUClast_D, AUMC_TAU, Accumulation_Index, C0, CLss, Cavg, Cavg_0_20, Clast, Cmax, Cmax_D, Cmin, Ctau, Ctrough, Dose, FluctuationPerCent, FluctuationPerCent_Tau, N_Samples, Swing, Swing_Tau, T0, Tau, Tlast, Tmax, Tmin, Vz]. In particular, parameters that relate to steady-state or partial AUC are not filtered, even though they rely on the lambda_z value for extrapolation when no valid observation is available at the upper end of the interval.

Upon saving the PKanalix project, these results stratification settings are saved in the result folder and they will be reloaded when reloading a PKanalix project. The table in the <result folder>/PKanalix/IndividualParameters/nca/ncaIndividualParametersSummary.txt takes into account the split definition. This table is generated when clicking “run” in the task tab (usually without splits, as the result tab is not yet available to define them) and also upon saving the project (with splits if defined).


NCA plots

In the “Plots” frame, numerous plot associated to the individual parameters are displayed.

  • Correlation between NCA parameters: The purpose of this plot is to display scatter plots for each pair of parameters. It allows to identify correlations between parameters, which can be used to see the results of your analysis and see the coherence of the parameters for each individuals.
  • Distribution of the NCA parameters: The purpose of this plot is to see the empirical distribution of the parameters and thus have an idea of their distribution over the individuals.
  • NCA parameters w.r.t. covariates: The purpose of this plot is to display the individual parameters as a function of the covariates. It allows to identify correlation effects between the individual parameters and the covariates.
  • NCA individual fits: This plot shows the lambdaZ regression line for each individual.


NCA outputs

After running the NCA task, the following files are available in the result folder: <resultFolder>/PKanalix/IndividualParameters/nca

  • Summary.txt contains the summary of the NCA parameters calculation, in a format easily readable by a human (but not easy to parse for a computer)
  • ncaIndividualParametersSummary.txt contains the summary of the NCA parameters in a computer-friendly format.
    • The first column corresponds to the name of the parameters
    • The second column corresponds to the CDISC name of the parameters
    • The other columns correspond to the several elements describing the summary of the parameters (as explained here)
  • ncaIndividualParameters.txt contains the NCA parameters for each subject-occasion along with the covariates.
    • The first line corresponds to the name of the parameters
    • The second line corresponds to the CDISC name of the parameters
    • The other lines correspond to the value of the parameters
  • pointsIncludedForLambdaZ.txt contains for each individual the concentration points used for the lambda_z calculation.
    • id: individual identifiers
    • occ: occasions (if present). The column header corresponds the data set header of the column(s) tagged as occasion(s).
    • time: time of the measurements
    • concentration: concentration measurements as displayed in the NCA individual fits plot (i.e after taking into the BLQ rules)
    • BLQ: if the data point is a BLQ (1) or not (0)
    • includedForLambdaZ: if this data point has been used to calculate the lambdaZ (1) or not (0)

The files ncaIndividualParametersSummary.txt and ncaIndividualParameters.txt can be exported in R for example using the following command

 read.table("/path/to/file.txt", sep = ",", header = T)


  • To load the individual parameters using PKanalix name as headers, your just need to skip the second line
     ncaParameters = read.table("/path/to/file.txt", sep = ",",  header = T);
     ncaParameters[-1,] # to remove the CDISC name line
  • To load the individual parameters using CDISC as headers, your just need to skip the second line
     ncaParameters = read.table("/path/to/file.txt", sep = ",",  header = T, skip = 1)
  • The separator is the one defined in the user preferences. We set “,” in this example as it is the one by default.