☰
WinNonlin 6.0 操作规范:药代与BE统计全流程避坑指南
2026/11/2 7:24:05 网站建设 项目流程

简介:Phoenix WinNonlin 6.0 数据统计软件使用文档面向药代动力学与生物等效性研究的数据分析人员、临床药理从业者及药学相关专业学习者,聚焦于规范使用 WinNonlin 完成数据统计与模型拟合这一实际问题。压缩包内共 1 个 docx 文件,约 109KB,以文字说明形式系统梳理软件操作流程。内容涵盖受试者数据输入与复测数据采用、随机表服药顺序与周期确认、采血时间与剂量核对等基本要求,并逐步讲解创建项目、新建数据表、列名与数据类型设置、NCA 药动学参数计算、生物等效性与生物利用度计算等环节,同时列出等效试验、缓释制剂与药代动力学试验所需选择的参数组合及结果位数设置规范,附有 DF/τ 小于 143% 等注意事项与验证排错思路。已有 6133 人学习,适合需要对照规范流程完成数据统计、减少计算误差的读者参考。

1. 拿到一份 WinNonlin 6.0 操作规范:它到底能帮你避开哪些统计翻车

做药代动力学和生物等效性统计的人,手里多半都有一份口口相传的“操作规范”。这份 Phoenix WinNonlin 6.0 数据统计软件使用文档,就是某实验室内部沉淀下来的实操手册,核心不是教你软件怎么装,而是把从建项目、录数据、跑 NCA、算生物等效性到出表格出图的整条链路固定下来,保证出具数据的真实性和准确性。它最适合两类人:一是刚接手 BE 或药代项目、对着 NCA 界面不知道参数怎么勾的新手;二是已经会用但结果总在置信区间或方差分析上翻车的熟手。文档里有一条硬边界要先说清楚——WinNonlin 6.0 不支持三交叉检测项目的数据统计,拿到三周期三序列的设计别硬往里塞,这是选型阶段就得确认的事。

2. 建项目与录数据:列类型、单位、保留位数一次设对

2.1 项目和数据表的创建路径

软件里的所有操作都围绕 ObjectBrowser 展开,项目和数据表都是对象,命名规范直接影响后面能不能快速找到结果。新建项目走 File → New Project,然后在 ObjectBrowser 里右键 Rename 改成能识别的名字,比如“某项目_空腹_单次”。数据表走右键 Data → New → Worksheet,同样先 Rename。这一步看着琐碎,但一个 BE 项目动辄十几个受试者、多个周期,命名乱了后面 Send To 的时候很容易把参比制剂的数据发到受试制剂的 NCA 里去。

数据表建好后点 Add 添加列,弹出的窗口里要一次把 Data Type、Column Name、Unit、Custom 四样填清楚。文档给的最小列集合是 subject(受试者)、formulation(制剂,可简写 Form)、time(时间)、conc(浓度)。类型上只有 form 选 Text,其余全选 Numeric,这个不能反——form 一旦设成数值型,后面 Mappings 里选 Sort 会出问题。

2.2 保留位数的 Custom 写法

Custom 这一栏是很多人第一次用会卡住的地方,它控制的是这一列数据在表格和结果里的显示精度,写法有三种:

写法含义典型用途
F4固定保留 4 位小数浓度、时间等原始检测数据
G有效数字跨度大的参数
E科学计数法极小值浓度

我一般会把 conc 设成 F4 或按检测方法的实际精度来,time 按采血时间点的精度设。如果建列时忘了填,不用删表重建,在 Columns 框下用 DataType、Unit、Custom 三个入口都能补改;列顺序错了就用上下箭头调。数据粘贴进来之后,第一件事是核对复测数据的采用——同一个时间点有复测值时,按文档要求明确用哪一个,别让两行同 subject 同 time 的记录同时留在表里,否则 NCA 会把它当成两个采样点算。

2.3 服药顺序和周期必须先对齐随机表

录数据之前还有一步是软件管不了的:根据随机表确认每个受试者的服药顺序和周期。文档里特别提到两个中心的入选号口径不同,一个用体重顺序号、一个用用药顺序号,这意味着跨中心汇总时 subject 编号不能想当然地拼接。我的做法是在数据表里额外留一列 sequence(Text 类型),把随机表里的序列号原样录进去,后面做方差分析和非参数检验都要靠它。采血时间和服药剂量也要在这一步确认清楚,剂量后面要填进 Dosing 里,填错了整个 AUC 和清除率都是错的。

3. 跑 NCA:Mappings、Dosing 与参数勾选的完整链路

3.1 从数据表 Send To NCA 并完成映射

在数据表上右键 Send To → NCA and Toolbox → NCA,弹出窗口里有 Setup、Results、Verification 三个选项卡。进 Setup,在 Mappings 下把列角色对上:subject 和 form 都选 Sort,time 选 Time,conc 选 Concentration。Sort 的含义是这两个变量作为分组维度,NCA 会按 subject × form 的组合分别算一套参数,这正是 BE 试验需要的粒度。

接着点 Dosing,勾选 Use internal Worksheet,弹出窗口里把 subject、form 的勾去掉——这一步是告诉软件剂量信息对整个数据集统一,不按受试者或制剂分别给。然后在 Dose 填服药剂量,Time of Dose 填给药时间,生物利用度试验一般填 0;多次给药时 Tau 填给药间隔,单次给药不填这一项。最下面的 Options 里 Unit 填剂量单位。剂量单位这一栏容易被忽略,但它会跟着参数结果一起输出,单位错了审阅的人第一眼就会打回来。

3.2 按试验类型勾参数,别一把全选

点 Parameter Names,选 Use internal Worksheet,然后逐个参数设 YES 或 NO。文档按试验类型给了明确清单,我整理成对照表,照着勾就行:

试验类型给药方式必选参数
等效试验通用HL_Lambda_z、Tmax、Cmax、AUClast、AUCINF_obs
缓释制剂等效单次上述 + MRTlast、MRTINF_obs
缓释制剂等效多次上述 + Cmin、Cavg、Fluctuation%、AUCss
药代动力学单次Lambda_z、HL_Lambda_z、Tmax、Cmax、AUClast、AUCINF_obs、Vz_F_obs、Cl_F_obs、MRTlast、MRTINF_obs
药代动力学多次Lambda_z、HL_Lambda_z、Tmax、Cmax、AUClast、AUCINF_obs、Cmin、Cavg、Fluctuation%、Vz_F、Clss_F、MRTINF_obs、Accumulation Index、AUCss

参数名后面的括号是报告里常用的缩写,比如 HL_Lambda_z 就是 t1/2,AUClast 是 AUC0-t,AUCINF_obs 是 AUC0-∞,Vz_F_obs 是表观分布容积 Vd,Cl_F_obs 是血浆清除率 Cl。勾选时注意单次和多次的差别:多次给药才有 Cmin、Cavg、Fluctuation%、AUCss 和蓄积指数,单次给药勾了也出不来有意义的值。

3.3 Verify 通过再 Execute

参数勾完不要直接跑。点工具栏的 Verify NCA,出现“NCA is ready to be run”才说明映射和剂量信息自洽;出现别的提示就切到 Verification 选项卡看原因,常见的是某列类型不对、Dosing 没填或者 Sort 角色缺失,改完再验一次。验证通过后点 Execute NCA 计算。结果在 Results 的 Final Parameters Pivoted from NCA 里,确认无误后点 Copy to Data Folder 导出成数据表,导出时顺手把参数保留位数设好。

保留位数文档给了明确口径:HL_Lambda_z、Tmax 保留两位;Cmax 与输入的浓度位数一致;AUC 看量级,两位数保留两位、三位数保留一位、四位数不保留小数;Lambda_z 保留四位,Vd 不保留,Cl 保留一位,MRT 保留两位,DF 保留一位,Accumulation Index 保留两位。这套口径不是审美问题,是报告一致性要求,同一批数据里 AUC 有的两位有的四位,审阅时就是硬伤。

3.4 AUC 外推比例要单独算一遍

导出的 NCA 表里还没有 AUC0-t/AUC0-∞ 这个比值,得自己加列算。在导出的数据表里新增 Ratio、sequence、period 三列,Ratio 和 period 设 Numeric,sequence 设 Text,把对应值填进去,然后算 AUC0-t 除以 AUC0-∞。要求这个比值大于 80%,低于这个线说明末端相外推占比过大,Lambda_z 的拟合区间可能要重新看。这一步软件不会替你拦,只能靠人盯。

4. 生物等效性与 Tmax 非参数检验:置信区间和 P 值的判定线

4.1 从 NCA 结果 Send To Bioequivalence

在 Final Parameters Pivoted from NCA 上右键 Send To → NCA and Toolbox → Bioequivalence。Mappings 里 Cmax、AUClast、AUCINF_obs 选 Dependent,form 选 Formulation;多次给药时等效计算用 Cmax 和 AUCss。同样先 Verify Bioequivalence,出现 ready 提示再 Execute。结果导出还是走 Copy to Data Folder。

判定标准这块文档列得很细,我按结果表拆开说。Average Bioequivalence 里,相对生物利用度 Ratio Ref 尽量落在 95%~105%,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% 再算一次。这是参数设置层面的操作,不是放宽判定,报告里要写清楚用的哪套标准。

4.2 Tmax 走 Crossover 做 Wilcoxon 配对检验

Tmax 不服从正态分布,不能塞进上面的等效性模型,要走非参数检验。右键药代动力学参数结果表 Send To → NCA and Toolbox → Crossover,Mappings 里 Form 选 Treatment,Response 选 Tmax,Verify 通过后 Execute Crossover,底层是 Wilcoxon 配对法。结果看 Effects 工作表里 Treatment(SEQ1=SEQ2)的 P 值,要求大于 0.05。

需要做非参数检验的参数范围文档也给了:等效试验只算 Tmax;缓释制剂等效单次给药算 HL_Lambda_z、Tmax、MRTlast、MRTINF_obs,多次给药算 HL_Lambda_z、Tmax、MRTINF_obs;药代等效试验算 Tmax。别把 Cmax、AUC 也丢进 Crossover,那些走的是上面的参数法。

5. 出表出图与避坑:Table 模式、XY Plot 分组和五条血泪经验

5.1 Table 的 Row/Column/RowID/Data 四角色

右键数据表 Send To → Reporting → Table,弹出的表里要选报告模式,四个角色分别是 Row(主要列)、Column(行)、RowID(次要列)、Data(数据)。三种常用统计表的配法:

报表RowRowIDColumnData
血药浓度统计表formsubjecttimeconc
药代参数结果统计表form(可选)subjectform(可选)各参数
生物利用度结果统计表—subjectDependentRatio Pctref

在 Statistics 下勾 Mean、SD、RSD,生物利用度和药代参数再加 Geometric Mean。Option 里 Numeric Precision 的 Value 设保留位数,一般 Mean、SD、Geometric Mean 跟数据源一致,RSD 保留一位小数。

5.2 XY Plot 的分组逻辑

右键受试者数据 Send To → Plotting → XY Plot,X 轴选时间、Y 轴选浓度。Group 和 Page 的搭配决定图长什么样:画单个受试者自己的药时曲线,Group 选 subject、Page 选 form;画受试和参比分开的曲线,Group 选 form、Page 选 subject;画均数对比图时,Error 设在 Error Bars 的 Lower 和 Upper 上。样式在 Plot → Layout 调,标题走 Plot → Title,坐标范围走 Axes → X or Y,曲线颜色在 Graphs → conc Vstime → Apperance 里改。

5.3 五条踩坑记录

现象:Verify NCA 一直不通过,提示映射有问题。原因多半是 form 列建表时选成了 Numeric,Mappings 里选 Sort 后类型不匹配。解决是把该列 Data Type 改回 Text,重新映射再验。

现象:多次给药结果里 Cmin、Cavg 全是空。原因是 Dosing 里 Tau 没填,软件不知道给药间隔就没法算稳态参数。补上 Tau 再 Execute,注意单次给药不要填这一项。

现象:AUC0-t/AUC0-∞ 算出来低于 80%,但 Lambda_z 看着挺正常。常见原因是末端相拟合区间取太短,或者复测数据采用了错误的那个值导致末端点偏移。先核对复测数据的采用规则,再回 NCA 里看 Lambda_z 的拟合点范围。

现象:方差分析里周期间 P 值小于 0.05。这通常不是软件问题,而是 sequence 或 period 列录错了,或者跨中心入选号口径混用导致周期归属错乱。回数据表逐行核对随机表,确认每个 subject 的 sequence 和 period 与随机化方案一致。

现象:导出的参数表里 AUC 有的两位小数有的四位。原因是 Copy to Data Folder 时没设保留位数,或者设了但没按量级分档。按第 3 章的位数口径重新设一遍,AUC 按两位数两位、三位数一位、四位数零位处理。

6. 把规范变成可复用的检查动作:我的收尾习惯

这套流程跑顺之后,真正决定结果能不能过审的不是软件操作,而是几个固定检查点有没有走。我现在的习惯是:数据粘贴完先做一次 subject × form × time 的唯一性检查,把重复时间点挑出来确认复测采用;NCA 之前把 sequence 和 period 两列跟随机表逐行对一遍,这一步花五分钟,能省掉后面方差分析 P 值异常时两小时的排查;Verify 通过后不急着 Execute,先扫一眼 Dosing 里的 Dose、Time of Dose、Tau 和 Unit 四项;结果导出后按量级分档设位数,再用 Ratio 列算一遍 AUC 外推比例。

有一个容易被当成玄学的点:同样的数据,不同人跑出来的置信区间偶尔会有细微差别,多数时候是 Lambda_z 拟合区间的手动调整不同导致的。所以我的做法是把每个受试者的拟合点范围记在一张附表里,跟 NCA 结果一起归档,复现的时候有据可查,不用靠后悔药。另外,三交叉项目在 6.0 上跑不了这件事,最好在项目启动阶段就跟方案设计的人确认清楚,别等数据都录完了才发现工具不支持。

从那以后我每次接手新的 BE 项目,都会先把这份规范里的参数清单和判定线抄成一张检查表,跑完一个受试者就勾一遍,全部勾完才出报告。希望帮到你。

本文还有配套的精品资源,点击获取

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询