全部版块 我的主页
论坛 数据科学与人工智能 数据分析与数据科学 SAS专版
529 4
2022-03-29
请教各位大神们:
       数据集中有12种疾病(cancer hypertension diabetes GXZ stro kide heart obse COPD bone waist digestive),如何得出疾病的两两组合和三三组合?并分年龄性别等求出每种组合的患病率?

二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

全部回复
2022-3-29 16:29:17
data formula;
    array x[4] $ ("A","B","C","D");
    n=dim(x);
    ncomb=comb(n,3);
    do i=1 to ncomb;
        call allcomb(i,3,of x[*]);
        output;
    end;
    keep x1-x3;
run;
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2022-3-29 16:42:48
乐天天12300 发表于 2022-3-29 16:29
data formula;
    array x[4] $ ("A","B","C","D");
    n=dim(x);
您好,十分感谢您的回答!
我按您的程序跑了一下,得出以下结果,
X1          X2             X3
obse       cancer      heart
obse       diabetes    heart
……         ……          ……

因为要计算每种疾病组合的患病率,所以还要得出每种疾病组合的患病人数和基本特征信息,请问这部分如何得出?
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2022-3-29 16:57:35
患病率?不是构成比吗?在原始数据里生成一个变量,即这个人所患疾病的组合类型。然后用freq过程计算占比。
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2022-3-29 17:04:35
乐天天12300 发表于 2022-3-29 16:57
患病率?不是构成比吗?在原始数据里生成一个变量,即这个人所患疾病的组合类型。然后用freq过程计算占比。 ...
好的,我试试,非常感谢
我试着在原始数据中生成一个三种疾病的组合的变量,因为每个人的共病组合不同,一共定义了220种组合,这种效率太低了。请问各位有没有什么好的办法?
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

相关推荐
栏目导航
热门文章
推荐文章

说点什么

分享

扫码加好友,拉您进群
各岗位、行业、专业交流群