简介:这份文档面向药代动力学与生物等效性研究的数据分析人员,系统梳理 Phoenix WinNonlin 6.0 数据统计软件的规范化使用流程,帮助读者规避数据录入与参数选择中的常见错误。内容覆盖受试者数据输入与复测数据采用、随机表服药顺序核对、采血时间与剂量确认等基本要求,并逐步讲解创建项目、建立数据表、列名与数据类型设置、NCA 参数映射与验证执行等操作环节。文档还针对等效试验、缓释制剂单次与多次给药、药代动力学试验分别列出应选参数,如 HL_Lambda_z、Tmax、Cmax、AUClast、AUCINF_obs、MRT、Vz_F_obs、Cl_F_obs 等,并给出参数保留位数设置与 DF/τ 小于 143% 等注意事项。资源包共 1 个 docx 文件,约 109KB,轻量易查阅,已有 6111 人学习,适合需要规范出具统计结果的实验人员对照参考。
1. 拿到一份 WinNonlin 6.0 操作规范,先别急着点 NCA
药动学参数计算这件事,最怕的不是软件不会用,而是数据进去了、结果出来了,却没人能说清这个 AUC 是怎么积出来的。Phoenix WinNonlin 6.0 这套数据统计软件在生物等效性、生物利用度和药代动力学试验里用得很多,但真正决定结果能不能用的,往往不是软件本身,而是输入数据是否干净、映射是否对得上、参数选择是否符合试验设计。这份操作规范把从建项目、建数据表、跑 NCA、做生物等效性、Tmax 非参数检验到出表出图的全流程拆成了可照做的步骤,适合刚接手 BE 项目的数据统计人员,也适合需要复核结果是否合规的临床药理从业者。它解决的核心问题只有一个:让每一次出具的参数都能追溯到明确的设置和判断标准,而不是靠玄学调参。
2. 数据表建不对,后面全是白跑:列定义与映射的硬约束
2.1 建项目与建数据表:列名、类型、单位一次定死
WinNonlin 6.0 的工程结构是 Project 下面挂 Data 和 Worksheet,所有分析都从一张结构正确的 Worksheet 开始。常见翻车点不在分析阶段,而在建表阶段:列名拼错、类型选错、单位漏填,等到 NCA 映射时才发现对不上,回头改表会把已经做好的映射全部打乱。所以建表时我一般会先把四列固定下来:subject、form、time、conc,顺序不要随意调,后面映射时按名字找列,顺序错了虽然能改,但容易在多个工作表之间混淆。
操作路径是右键 Data → New → Worksheet,然后在 ObjectBrowser 里右键 Worksheet 改名。点 Add 添加列,在弹出的窗口里逐列设置 Data Type 和 Column Name。form 必须是 Text,其余三列是 Numeric。Unit 填单位,Custom 填保留位数,F4 表示四位小数,G 表示有效数字,E 表示科学计数法。这里有个细节:Custom 不是显示格式,它会影响后续结果导出的默认精度,建表时填错,后面导参数表还得再改一遍。
列名 Data Type Unit Custom subject Numeric - F0 form Text - - time Numeric h F2 conc Numeric ng/mL F4上表的 Custom 只是建表时的默认值,实际项目中 conc 的位数要和检测方法报告的有效位数一致,不能一律 F4。如果建表时忘了填 DataType 或 Unit,可以在 Columns 框下通过 DataType、Unit、Custom 直接补改,不必删表重建。列顺序不对时用上下箭头调整,调整完再粘数据,避免粘完再动列导致数据错位。
2.2 NCA 映射:subject 和 form 选 Sort 不是随便选的
数据表建好后,右键表 → Send To → NCA and Toolbox → NCA,进入 NCA 对象的 Setup 选项卡。Mappings 下要把列角色对上:subject 和 form 都选 Sort,time 选 Time,conc 选 Concentration。这里最容易误解的是 Sort 的含义,它不是排序操作,而是告诉软件按这两个变量分组,每个受试者每个制剂单独算一套参数。subject 不选 Sort,软件会把所有受试者当成一个整体;form 不选 Sort,受试制剂和参比制剂会混在一起算。
Dosing 设置是第二个高频出错点。勾选 Use internal Worksheet 后,弹出窗口里要取消 subject 和 form 的勾选,只保留剂量相关信息。Dose 填服药剂量,Time of Dose 一般填 0,多次给药时 Tau 填给药间隔,单次给药不填 Tau。剂量单位在 Options 框的 Unit 里填,这个单位会直接出现在参数表的表头里,填错不会报错,但出报告时会被审核挑出来。
Mappings: subject -> Sort form -> Sort time -> Time conc -> Concentration Dosing: Use internal Worksheet: 勾选 弹出窗口: 取消 subject、form 勾选 Dose: 实际给药剂量 Time of Dose: 0(生物利用度试验) Tau: 多次给药填给药间隔,单次不填参数选择在 Parameter Names 里做,选 Use internal Worksheet,然后对每个参数标 YES 或 NO。等效试验至少要 HL_Lambda_z、Tmax、Cmax、AUClast、AUCINF_obs;缓释制剂单次给药再加 MRTlast、MRTINF_obs,多次给药还要加 Cmin、Cavg、Fluctuation%、AUCss;药代动力学试验单次给药要加 Lambda_z、Vz_F_obs、Cl_F_obs、MRTlast、MRTINF_obs,多次给药再加 Cmin、Cavg、Fluctuation%、Vz_F、Clss_F、Accumulation Index、AUCss。参数不是选得越多越好,多选的参数如果数据不支持,验证阶段会报错,反而拖慢进度。
2.3 验证与执行:Verify 不过就不要点 Execute
Setup 配完后点工具栏的 Verify NCA,出现 “NCA is ready to be run” 才能点 Execute NCA。出现其他提示时,切到 Verification 选项卡看具体原因,常见的是 time 列有重复值、conc 列有空值、某个受试者缺少给药时间点。改完再验证,不要跳过验证直接执行,跳过验证跑出来的结果可能缺参数,而且不会明确告诉你缺了哪个。
结果在 Results 下的 Final Parameters Pivoted from NCA 里,点 Copy to Data Folder 导出到 Data 文件夹。导出后要设参数保留位数,这一步规范里给了明确规则:HL_Lambda_z、Tmax 保留两位;Cmax 与输入浓度位数一致;AUC 两位数保留两位、三位数保留一位、四位数不保留小数;Lambda_z 保留四位,Vd 不保留,Cl 保留一位,MRT 保留两位,DF 保留一位,Accumulation Index 保留两位。这些位数不是审美问题,报告里位数不统一,复核时会被要求整表重出。
导出后还要在数据表里加 Ratio、sequence、period 三列,Ratio 和 period 是 Numeric,sequence 是 Text,然后算 AUC0-t/AUC0-∞,要求大于 80%。这个比值低于 80% 说明采样时间不够长,AUC0-∞ 外推比例过大,参数不可靠,需要回头检查采血点设计,而不是在软件里调参数硬凑。
3. 生物等效性与 Tmax 检验:置信区间和 P 值的判断边界
3.1 生物等效性计算:Dependent 选谁、Formulation 选谁
从 Final Parameters Pivoted from NCA 右键 Send To → NCA and Toolbox → Bioequivalence。Mappings 下 Cmax、AUClast、AUCINF_obs 选 Dependent,form 选 Formulation。多次给药时等效计算用 Cmax 和 AUCss,不要沿用单次给药的 AUClast。这个区别在规范里写得很清楚,但实际操作中容易顺手沿用上一次的设置,跑完才发现 Dependent 选错了,结果整批重算。
验证同样先点 Verify Bioequivalence,出现 ready 提示再 Execute。结果里要看的指标分几层:Average Bioequivalence 中 Ratio Ref 尽量在 95% 到 105% 之间,CI 90 在 80% 到 125% 之间,Prob80/125 小于 0.05,AHpval 小于 0.05,Power 大于 0.8;Final Variance Parameters 中 Intrasubject CV 小于 0.3;Partial SS 中周期间、制剂间、服用顺序的 P 值都要大于 0.05;Ratios Test=T 中 Ratio Pctref 在 60% 到 170%,Cmax 在 50% 到 200%,超限需要复测。
Cmax 的置信区间如果不满足 80% 到 125%,规范允许单独按国内标准 75% 到 133% 计算。这是一个需要谨慎使用的口子,不是默认放宽,而是在明确适用条件后单独设置,报告里要能说清为什么对这个参数用了不同区间。
3.2 Tmax 非参数检验:Crossover 的 Response 只放 Tmax
右键药代动力学参数结果表 Send To → NCA and Toolbox → Crossover。Mappings 下 Form 选 Treatment,Response 选 Tmax。验证通过后执行 Crossover,走的是 Wilcoxon 配对法。结果看 Effects 工作表里 Treatment(SEQ1=SEQ2)的 P 值,要求大于 0.05。
这里有个容易漏的点:非参数检验的对象随试验类型不同。等效试验只检验 Tmax;缓释制剂等效试验单次给药要检验 HL_Lambda_z、Tmax、MRTlast、MRTINF_obs,多次给药检验 HL_Lambda_z、Tmax、MRTINF_obs;药代等效试验只检验 Tmax。如果只放 Tmax 而试验类型要求检验 MRT,结果表里会缺项,出报告时才发现就得重跑。
3.3 出表与出图:Row、Column、RowID 的角色别搞反
表格用右键 Send To → Reporting → Table。Row 是主要列,Column 是行,RowID 是次要列,Data 是数据。受试者血药浓度统计表:Row 选 form,Row ID 选 subject,Column 选 time,Data 选 conc。药代参数结果统计表:Row ID 选 subject,Data 选各参数,form 可以放 Row 也可以放 Column。生物利用度结果统计表:Row ID 选 subject,Data 选 Ratio Pctref,Column 选 Dependent。
Statistics 下一般选 Mean、SD、RSD,生物利用度和药代参数再加 Geometric Mean。Option 里 Numeric Precision 的 Value 设保留位数,Mean、SD、Geometric Mean 与数据源一致,RSD 保留一位小数。药时曲线图用 Send To → Plotting → XY Plot,X 轴 time、Y 轴 conc;单个受试者图 Group 选 subject、Page 选 form,受试参比对比图 Group 选 form、Page 选 subject;均数对比图在 Error Bars 的 Lower 和 Upper 上设 Error。图样式在 Plot → Layout 调,标题在 Plot → Title 加,坐标范围在 Axes 里设,曲线颜色在 Graphs → conc VStime → Apperance 里改。
4. 避坑清单:这五处翻车我见过不止一次
4.1 复测数据直接覆盖原值,NCA 结果对不上原始记录
现象是参数算出来和手工复核对不上,追溯发现 conc 列里某个时间点用了复测值,但原始值被覆盖,没有留下替换记录。原因是数据输入时图省事直接改单元格。解决方式是复测数据单独建列或单独建表,保留原值、复测值和采用值三列,NCA 用采用值列,报告里能说清每个替换点的依据。规范里“注意复测数据的采用”这句话不是客套,它是数据真实性的底线。
4.2 服药顺序和周期没按随机表核对,Partial SS 的 P 值异常
现象是生物等效性结果里周期间或服用顺序的 P 值小于 0.05,但临床执行记录看起来没问题。原因往往是数据表里的 sequence 和 period 列填错,或者入选号与用药顺序号对应关系搞混。规范里特别提到不同来源的体重顺序号和用药顺序号哪个作为入选号,这类对应关系一旦错位,方差分析的分组就全错了。解决方式是在建 Ratio、sequence、period 列时,逐条对照随机表核对,核对完再跑 Bioequivalence,不要等结果异常了再回头查。
4.3 多次给药忘了填 Tau,AUCss 和蓄积指数算不出来
现象是多次给药项目跑 NCA 后,AUCss、Cavg、Fluctuation%、Accumulation Index 缺失或异常。原因是 Dosing 里 Tau 没填,软件不知道给药间隔,稳态相关参数无从计算。解决方式是在 Dosing 的 Tau 里填实际给药间隔,同时确认 Time of Dose 和采血时间点的对应关系。单次给药不填 Tau 是对的,但多次给药漏填不会报错,只会静默缺参数,这是最隐蔽的一类问题。
4.4 参数保留位数随手设,导出表被审核打回
现象是 NCA 结果本身没问题,但导出的参数表位数不统一,AUC 有的两位有的没小数,Cmax 和原始浓度位数对不上。原因是导出后没有按规范逐参数设 Custom。解决方式是导出到 Data 文件夹后,按 HL_Lambda_z、Tmax 两位,Cmax 与输入一致,AUC 按位数分级,Lambda_z 四位,Vd 不保留,Cl 一位,MRT 两位,DF 一位,Accumulation Index 两位逐项设置,设完再复制到报告模板。
4.5 缓释制剂 DF/τ 超限还在往下跑
现象是缓释制剂多次给药等效试验里,受试制剂与参比制剂相比 DF/τ 大于 143%,但流程还在继续出等效结论。原因是这个判断没被当成前置检查项。解决方式是在 NCA 结果出来后先算 DF/τ,超限就停下来查处方或数据,不要带着超限的波动系数去跑生物等效性,否则后面的置信区间再漂亮也站不住。
5. 把验证做成习惯:一套可复用的复核动作
WinNonlin 6.0 的流程本身不复杂,复杂的是每一步都有隐含前提。我后来固定了一套复核动作,跑任何项目之前先过一遍:第一,检查 Worksheet 四列的 Data Type 和 Unit,form 必须是 Text;第二,NCA 映射里 subject 和 form 都选 Sort,Dosing 的 Use internal Worksheet 勾选后取消 subject、form;第三,Verify 不通过绝不 Execute,Verification 选项卡的提示逐条看完再改;第四,导出参数表后先设位数再复制,AUC0-t/AUC0-∞ 比值低于 80% 就回头查采血点;第五,Bioequivalence 跑完先看 Intrasubject CV 和 Partial SS 的 P 值,再看置信区间,顺序反了容易只盯着 CI 忽略方差结构问题。
这套动作可以固化成一张检查表,贴在项目文件夹里:
| 检查点 | 通过标准 | 不通过时看哪里 |
|---|---|---|
| 列类型与单位 | form 为 Text,其余 Numeric,Unit 非空 | Columns 框下 DataType、Unit |
| NCA 映射 | subject、form 均为 Sort | Setup → Mappings |
| Dosing | 多次给药 Tau 已填 | Setup → Dosing |
| NCA 验证 | 出现 ready to be run | Verification 选项卡 |
| AUC 外推比 | AUC0-t/AUC0-∞ > 80% | 采血点设计与末点浓度 |
| 等效验证 | 出现 ready to be run | Verification 选项卡 |
| 个体内变异 | Intrasubject CV < 0.3 | Final Variance Parameters |
| 方差分析 | 周期、制剂、顺序 P > 0.05 | Partial SS |
| 置信区间 | CI 90 在 80%~125% | Average Bioequivalence |
| 缓释波动 | DF/τ < 143% | NCA 结果中的 DF 与 Tau |
还有一条经验:WinNonlin 6.0 不支持三交叉检测项目的数据统计,接到这类设计不要试图在软件里绕,绕出来的结果没法用规范口径解释。项目开始前先确认设计类型,比跑到一半发现工具不支持要省事得多。从那以后我每次建完 Worksheet、配完 NCA 映射,都强制先跑一遍 Verify 再碰 Execute,这个习惯帮我拦下过不少静默缺参数的问题。希望帮到你。
本文还有配套的精品资源,点击获取