以下是一个SAS程序,可以用来结合编码后的PTname核查AE是否有重复记录:

/* 创建一个临时数据集,用于存储编码后的PTname和对应的AE记录数 */
data temp;
  length PTname $50;
  set mydata end=last;
  by PTname AE;
  retain PTname PTcode AEcount;
  if first.PTname then do;
    PTcode = cats('PT', put(_n_, z3.));
    PTname = PT;
    AEcount = 1;
  end;
  else AEcount + 1;
  if last.PTname;
  output;
run;

/* 使用PROC SQL查询临时数据集,找出AE记录数大于1的PTname */
proc sql;
  select PTname, count(*) as AEcount
  from temp
  group by PTname
  having count(*) > 1;
quit;

这个程序首先创建一个临时数据集,用于存储编码后的PTname和对应的AE记录数。它会遍历原始数据集中的每个记录,并按照PTname和AE进行排序。对于每个新的PTname,程序会生成一个唯一的PTcode,并将AEcount初始化为1。对于每个相同的PTname,程序会将AEcount加1。最后,程序会将每个PTname的PTcode、PTname和AEcount输出到临时数据集。

然后,程序使用PROC SQL查询临时数据集,找出AE记录数大于1的PTname。这些PTname表示有重复记录的AE,需要进一步检查和处理。

注意,这个程序假设原始数据集中的PTname已经编码过了,所以它没有做任何编码的工作。如果需要对PTname进行编码,可以在程序中添加相关的步骤。

SAS程序:使用编码后的PTname核查AE重复记录

原文地址: https://www.cveoy.top/t/topic/noTX 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录