SAS程序筛选基线阳性且基线后滴度低于基线4倍的受试者
以下是使用SAS程序筛选出基线阳性但所有基线后滴度值都低于基线阳性样本滴度值4倍的受试者的代码示例:
/* 首先筛选出基线阳性的样本 */
data a_pos;
set a;
where z = '阳性' and y > 0;
run;
/* 找出基线ADA阳性样本的滴度值 */
proc sql noprint;
select max(y) * 4 into :ADA_cutoff
from a
where z = '阳性' and y > 0;
quit;
/* 找出基线后所有观测满足条件的受试者编号 */
proc sql noprint;
create table b_pos as
select distinct x
from b
where m < &ADA_cutoff;
quit;
/* 找出满足条件的受试者编号 */
proc sql;
select distinct a.x
from a_pos as a
left join b_pos as b
on a.x = b.x
where b.x is null;
quit;
首先,我们使用WHERE子句筛选出基线阳性的样本,并将其存储在一个新的数据集a_pos中。
接下来,我们使用PROC SQL语句找出基线ADA阳性样本的滴度值,并将其存储在宏变量ADA_cutoff中。
然后,我们使用PROC SQL语句找出基线后所有观测满足条件的受试者编号,并将其存储在一个新的数据集b_pos中。
最后,我们使用LEFT JOIN语句和WHERE子句找出所有满足条件的受试者编号:在a_pos中且不在b_pos中。
原文地址: https://www.cveoy.top/t/topic/nmqI 著作权归作者所有。请勿转载和采集!