NONMEN软件概览及数据文件
一、NONMEN软件的组成
NONMEN软件主要由3部分组成:
1. NONMEN转译器——NM-TRNA
2. 群体药动学模型和参数计算子程序——PREDPP
3. 估算非线性混合效应的计算工具包——NONMEN
NM-TRAN将数据和控制文件转译为NONMEM可执行文件。在此过程中,NM-TRAN根据用户定义的控制文件,调用合适的子程序,并发送至FORTRAN编译器进行编 译和计算。若控制文件中调用PREDPP子程序,则会生成“PK”和“ERROR”子程序,与 NMTRAN转译的可执行文件合并后进行计算。最后,根据用户定义输出相应的计算结 果文件。
二、数据文件
1. 数据规则
- 数据结构
数据集要求:数据文件为包含行和列的二维 数据。除某些特殊项(TIME、DATE等)外,所有数据应以数字的形式表示,一般采用以逗号分隔符的csv文件保存。 - 变量
NONMEM中的变量名应为英文字母或数字组合,变量总数少于50个,若数据集中的变量数 多于50个,则需采用$INPUT语句中的DROP选项,忽略某些变量项。
某些变量名在NONMEM中有特定含义,不可更改,特定变量名:ID TIME DATE DAT1 DAT2 DAT3 DV MDV EVID AMT RATE ADDL II CMT SS PCMT 等,在ADVAN子程序模块中,药动学参数的名称也是固定的,不可更改,如 ADVAN2中的KA、CL、V、F1、F2、ALAG1、ALAG2、S1和S2等。 -
数据
变量的数量和变量名对应
如出现缺失时可写为:"." 或者 0
注意:若协变量数据为空,软件将视为0,对结果产生影响。
数据集中的所有协变量的记录都不能省略。尽管某些协变量在多条记录中是 固定不变的(如性别、年龄、体重等),但仍需在数据集中逐行填写。
2. 常用变量
-
ID 必须项
ID(identification)项是个体标识符,在数据集中是必需项。每个研究对象均须创建一个唯一的ID。同一受试者的ID不仅要相同,而且要连续排列,一旦被其他ID分开,会被认为是不同的受试者(即使ID是相同的)ID最长14位,但默认只能读5位
当ID超过5位有效数字时,如1234567890和1234567891,虽然 NONMEM软件会将其解读为两个不同个体,但在表格文件中ID项都显示1.2346E+09。 可通过更改列表文件的输出格式 -
TIM
事件发生的时间
TIME项表示数据集中每一条记录发生的时间,因此应为正值,且在同一个个体中 TIME应为升序排列,不可缺失。TIME可采用时钟时间(如12牶30)或十进制时间 (12.5)表示,在同一个数据集中应保持 -
DATE
事件发生的日期
DATE项表示数据集中每一条记录发生的日期,可以与TIME项结合起来构建事件发 生的时间序列。当使用DATE项时,TIME项的值范围须在0~24h范围内。若两个事件 的发生间隔超过24h,则须相应地增DATE项的值,使TIME项的值始终不超过24h。 DATE项可用绝对时间也可用相对时间表示。 -
DV
因变量,即观测值:PK指标浓度、PD指标INR等,只有在观测事件发生时DV项才能赋值。给药事件 或其他类型的事件下,DV项必须缺失。 DV与CMT一起使用,对指定隔室进行观察 -
MDV
是一个逻辑变量
表示DV的缺失(missing)DV缺失时为1,未缺失时为0,MDV=0或未指定 MDV项,则会出现警示信息,DV不是必须项 -
EVID
表示对当前数据记录的类型的说明。其值可取0、1、2、 3和4。
EVID=0表示观察事件;
EVID=1表示剂量事件;
EVID=2表示其他事件;
EVID=3表示重置系统条件(所有隔室中药量或浓度变为0); EVID=4表示3和1的结合,重置后给予剂量
使用EVID项时,注意AMT和DV项的值应与之对应 -
AMT
给药剂量所有记录中单位一致所有的观察事件(DV)或其他事件,AMT值必须缺失, 由于数据集中无法定义AMT的单位,故在同一个数据集中所有AMT的单位应统一 -
RATE
给药速率:单位时间里给予的药量
对于输注给药或零级吸收的药物,RATE项表示药物的给药速率, 输注速率可作为一个数据项,也可以作为参数进行估算,但在数据集中必须包含RATE项。RATE项的取值可以为-2、-1、0或大于0的任意实数。RATE项的赋值代表了不同输注速率的处理方式。
RATE=-2时,定义输注持续时间Dn为模型参数,其中n为药物进入的房室数。 Dn表示药物持续进入第n房室内的时间。例如,D1表示药物持续进入第一个房室的 时间。
RATE=-1时,定义输注速率Rn为模型参数,其中n为药物进入的房室数。Rn表示 药物持续进入第n房室内的速率,例如,R2表示药物进入第二房室的速率。
RATE=0时,表示不进行输注给药。例如,若在数据集中同时给予静脉推注和静脉输 注药物时,静脉推注的记录行上RATE项应为0;而静脉输注的记录行上RATE项可为 -1、-2或大于0的实数,但不能为0,否则系统将视为静脉推注给药。
RATE为大于0的实数时,指定输注速率为单位时间内的给药量。例如,RATE= 2000时,表示单位时间1h内的给药2000单位,因此输注速率为2000单位/小时。此 外,输注时间可以通过AMT/RAT进行计算-
ADDL和II
ADDL:给药记录之外的额外剂量(必须是相同的剂量和给药间隔
II:表示剂量之间的时间长度
示例1:10010号病人,接受5天的每日2次,每次100mg的剂量,常规表示如下:
如果利用ADDL,只需要1行记录就可以表示所有剂量:
示例2:在10天内,每天8:00,12:00,18:00给予100mg剂量,II分别为4h、6h、14h,由于II不统一,无法使用1行记录来表示,可将其视为3种每日一次的方案,用3条记录表示:
-
CMT
用于指定AMT或DV发生在哪个隔室,不是必须项,PREDPP模型的ADVAN子程序中,如有默认剂量和观察隔室,则不需要CMT -
SS
表示过去和当前给药的状态,取值为0、1或2
SS=0时,表示未处于稳态;
SS=1时,假定当前剂量为稳态剂量,并将隔室中的药量重置为稳态;
SS=2时,假定当前剂量为稳态剂量,但不重置系统条件,不会忽略先前记录的剂量,DV或其他事件的记录上,SS必须缺失
-
文章评论