全部版块 我的主页
论坛 数据科学与人工智能 数据分析与数据科学 SAS专版
1691 5
2014-01-13
data aaa;
merge a a(firstobs=2 rename=(return=hold));
Run;
这个可以运行,但是
data aaa;
merge a a(firstobs=2 rename=(return=hold) keep=hold);
Run;
就不行了,tell me why
二维码

扫码加我 拉你入群

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

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

全部回复
2014-1-13 21:43:31
rename与where一起连用,where语句里面应该用rename以后的new name;但如果rename与drop和keep连用的时候,drop,keep都应该用rename以前的old name.
二维码

扫码加我 拉你入群

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

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

2014-1-14 08:36:15
rename与where一起连用,where语句里面应该用rename以后的new name;但如果rename与drop和keep连用的时候,drop,keep都应该用rename以前的old name.
2楼正解。
代码第2行最后keep那里改一下
data aaa;
merge a a(firstobs=2 rename=(return=hold) keep=return);
Run;
二维码

扫码加我 拉你入群

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

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

2014-1-14 15:05:53
heperwong 发表于 2014-1-13 21:43
rename与where一起连用,where语句里面应该用rename以后的new name;但如果rename与drop和keep连用的时候, ...
我不仅想改name,还想改标签,但不想重新再用data步,然后构造了
data a;
merge a a(firstobs=2 rename=(return=hold) keep=return label=(return=hold));
run;
但是后面出错了,请问怎么改啊
二维码

扫码加我 拉你入群

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

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

2014-1-14 15:06:15
crazygoing 发表于 2014-1-14 08:36
2楼正解。
代码第2行最后keep那里改一下
data aaa;
我不仅想改name,还想改标签,但不想重新再用data步,然后构造了
data a;
merge a a(firstobs=2 rename=(return=hold) keep=return label=(return=hold));
run;
但是后面出错了,请问怎么改啊
二维码

扫码加我 拉你入群

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

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

2014-1-14 16:29:36
label= 放在data a的括号后面表示改变data a的label,并不能改变具体一个变量的label。如果你要改变具体某个变量的label,你可以将label语句放在外面,如下:

data a;
merge a a(firstobs=2 rename=(return=hold) keep=return );
label hold = "hold";
run;
二维码

扫码加我 拉你入群

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

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

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

说点什么

分享

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