全部版块 我的主页
论坛 数据科学与人工智能 数据分析与数据科学 SAS专版
4024 6
2019-04-07
最简单的例子,就是比如i=1 4 10 18... 等等一些列不规律的数值,但想根据i这些取值对数据集循环取子集。该怎么写?

在Python 中直接是 for i in (); 然后就可以遍历了。。SAS中如何操作了?
二维码

扫码加我 拉你入群

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

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

全部回复
2019-4-7 11:10:45
我刚才自己写了一个 大致是这样的
data a b c;
        set Sashelp.class;
        array t(3)  (11,12,13);
        if age = t1 then output a;
        if age = t2 then output b;
        if age = t3 then output c;
run;

我现在新的问题是这样的
生成的新的数据集(a, b, c)里面有t1, t2, t3这三个变量,我不想在数据集中出现这3个变量。如果在 arry t(3) 后面加上_temporary_ 直接显示t1, t2, t3未初始化 这点我也理解了。其实可以直接在data步中drop t1 t2 t3

二维码

扫码加我 拉你入群

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

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

2019-4-7 16:44:04
使用t[i]的形式来表示对数组元素的引用,而不是直接使用数据集中的变量。
例如,可以使用t[1]代替t1,这样,如果数组是临时数组,就不会被写入到新数据集中。
二维码

扫码加我 拉你入群

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

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

2019-4-8 12:00:58
whymath 发表于 2019-4-7 16:44
使用t的形式来表示对数组元素的引用,而不是直接使用数据集中的变量。
例如,可以使用t[1]代替t1,这样,如 ...
好的 我试一下 谢谢
二维码

扫码加我 拉你入群

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

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

2019-4-9 13:11:00
whymath 发表于 2019-4-7 16:44
使用t的形式来表示对数组元素的引用,而不是直接使用数据集中的变量。
例如,可以使用t[1]代替t1,这样,如 ...
果然如此 缺失不会生成新的变量t1 t2 t3了,谢谢大佬。
二维码

扫码加我 拉你入群

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

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

2019-4-22 10:01:44
用t[1]这种格式在数据集中还是显示有t1-t3变量呀!!
二维码

扫码加我 拉你入群

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

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

点击查看更多内容…
相关推荐
栏目导航
热门文章
推荐文章

说点什么

分享

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