SAS程序:结合编码后的PTname,核查AE是否存在重复记录
以下是一个SAS程序,用于检查AE是否存在重复记录,并结合PTname编码:
/*首先导入数据集*/
data ae_data;
infile 'path/to/ae_data.csv' dlm=',' firstobs=2;
input subject_id $ ae_code $ pt_code $;
run;
/*对PTname进行编码*/
proc format;
value $pt_fmt
'Abdominal pain' = 'AP'
'Headache' = 'HA'
/*其他PTname的编码*/
;
run;
/*对数据进行排序,以便进行比较*/
proc sort data=ae_data out=ae_data_sorted;
by subject_id ae_code pt_code;
run;
/*检查是否有重复记录*/
data ae_duplicates;
set ae_data_sorted;
by subject_id ae_code pt_code;
retain prev_subject_id prev_ae_code prev_pt_code;
if first.pt_code then call missing(prev_subject_id, prev_ae_code, prev_pt_code);
if not first.pt_code and subject_id = prev_subject_id and ae_code = prev_ae_code and pt_code = prev_pt_code then output;
prev_subject_id = subject_id;
prev_ae_code = ae_code;
prev_pt_code = pt_code;
run;
/*输出重复记录*/
proc print data=ae_duplicates;
title 'Duplicate AE Records (Based on Encoded PTname)';
run;
在这个程序中,我们首先导入AE数据集,并使用proc format对PTname进行编码。然后,我们对数据进行排序以便进行比较。在检查重复记录时,我们使用retain语句来保留前一个记录的信息,然后使用if语句来比较当前记录和前一个记录是否相同。最后,我们使用proc print输出重复记录。
原文地址: https://www.cveoy.top/t/topic/noSU 著作权归作者所有。请勿转载和采集!