全部版块 我的主页
论坛 数据科学与人工智能 数据分析与数据科学 SAS专版
3835 6
2012-05-14
麻烦向大家咨询一个在实际操作中经常会遇到的问题;

例如我有一个数据集a,里面有1000个变量,假设变量ID依次是var1,var2,var3.............var1000;

现在我需要在var700和var701之间插入一个变量newvar1;

我知道使用retain,但是SAS中对于一次处理的变量个数有限制,只能先拆成几个小的数据集,之后再merge,想问一下有没有

什么其他好的办法能够一步到位的解决问题??

谢谢!!
二维码

扫码加我 拉你入群

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

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

全部回复
2012-5-14 16:37:45

data b;
set a(keep=Var1 -Var700);
retain newvar1 1;
set a(keep=Var701 - Var1000);
run;

不知道我有没有理解对,你试试看有没有解决你的问题。
二维码

扫码加我 拉你入群

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

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

2012-5-14 17:17:55
jundal 发表于 2012-5-14 16:37
data b;
set a(keep=Var1 -Var700);
retain newvar1 1;
感谢感谢!看代码比较好,明天实验一下,谢了!!
二维码

扫码加我 拉你入群

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

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

2012-5-15 09:40:11
jundal 发表于 2012-5-14 16:37
data b;
set a(keep=Var1 -Var700);
retain newvar1 1;
这位老大,感谢您的想法,我觉得使用merge,例如:
merge a(keep=var1--var4) a(keep=var1 var11) a(keep=var1 var5--var10);
可能更保险!!
二维码

扫码加我 拉你入群

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

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

2012-5-16 07:21:41
乾坤神龙 发表于 2012-5-14 17:17
感谢感谢!看代码比较好,明天实验一下,谢了!!
data b;
retain Var1 -Var700 NEWVAR Var701 - Var1000;
set a;
run;
二维码

扫码加我 拉你入群

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

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

2012-5-16 10:28:07
bobguy 发表于 2012-5-16 07:21
data b;
retain Var1 -Var700 NEWVAR Var701 - Var1000;
set a;
感谢您,通过上面的启发,想法已经完全打开,谢谢!!
二维码

扫码加我 拉你入群

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

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

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

说点什么

分享

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