SAS代码(从基准时间点更改)

时间:2019-10-31 15:51:21

标签: sas

在一项临床试验中,在给药前(0小时)以及给药后1,2,4,8小时测量收缩压和舒张压。

研究了十二个受试者。 SAS数据集具有以下结构

可变电压长度-8标签-主题编号 变量-Ntime长度-8标签给药后的标称时间(小时) 可变长度-8个标签-仰卧收缩压(mmHg)

我可以使用哪种SAS代码来计算每个时间点相对于基线(Oh)的变化,然后计算12位受试者相对于基线的平均,最小,最大变化?编辑:这是我到目前为止尝试过的

   data postbase;

 do until (last.vol);
 *** Only keep pre-dose values;
 set save.vitals (where=(not(ntime <= 0 )));
 by Vol Ntime;
 if Ntime <= 0 then bl = Sups;
 else do;
 chgbl = Sups - bl;
 output;
 end;
 end;
 run; 

1 个答案:

答案 0 :(得分:0)

data postbase;
set save.vitals;
by subject time volume;
retain baseline;
if time=0 then baseline=volume;
else change = volume - baseline;
run;

我认为您的代码到目前为止太复杂了,我无法解析您的变量名,所以只能将它们组成。

我会在时间= 0时设置基准音量,然后每隔一段时间进行一次更改。 RETAIN使值保持不变,直到将其重置。如果您的时间可能不为0或缺少基线,则可能需要修改查询。