楼主: shenliang_111
8984 7

[原创博文] 关于rename [推广有奖]

  • 3关注
  • 12粉丝

教授

15%

还不是VIP/贵宾

-

威望
0
论坛币
14 个
通用积分
0.4174
学术水平
20 点
热心指数
26 点
信用等级
12 点
经验
17989 点
帖子
478
精华
0
在线时间
1627 小时
注册时间
2011-2-24
最后登录
2025-8-3

楼主
shenliang_111 发表于 2011-7-6 19:29:36 |AI写论文

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

求职就业群
赵安豆老师微信:zhaoandou666

经管之家联合CDA

送您一个全额奖学金名额~ !

感谢您参与论坛问题回答

经管之家送您两个论坛币!

+2 论坛币
想请问各位好朋友们,如何进行循环中的重命名

比如  do j=1 to 5;
i=j+1;
set  a (keep=id  x  rename=(id=  x=)) point=i;

我想达到的目的是使每次循环中set a 的变量均不同,这样不至于在PDV上覆盖原先的变量,也就是说  最好是使得 id=id j  x=xj ,j是循环中的数值,但是sas并不认识,她傻傻的把
j当作变量的一部分,我想过用id=id( j)  x=x(j),结果sas也报错,想问问各位好朋友,如何达到以上目的呢?谢谢大家了
二维码

扫码加我 拉你入群

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

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

关键词:rename name ENA Point keep 朋友 命名 如何 最好

沙发
honghejing 发表于 2011-7-6 19:50:44
keep=(id x)试试

藤椅
shenliang_111 发表于 2011-7-6 21:07:22
2# honghejing
不大懂哦...

板凳
ntsean 发表于 2011-7-7 06:41:53
用macro就可以了

报纸
pobel 在职认证  发表于 2011-7-7 07:23:24
data a;
    length code $400;
        code="data wanted;";
        do i=1 to 5;
           code=cat(strip(code)
                     ,"i="||strip(i)||"; "
                 ," set sashelp.class(keep=name "||"rename=(name=name"||strip(i+1)||")) point=i;"
                 );
        end;
        code=cat(strip(code), " output; stop; run;");
        call execute(code);
run;
和谐拯救危机

地板
bobguy 发表于 2011-7-7 10:25:08
shenliang_111 发表于 2011-7-6 19:29
想请问各位好朋友们,如何进行循环中的重命名

比如  do j=1 to 5;
i=j+1;
set  a (keep=id  x  rename=(id=  x=)) point=i;

我想达到的目的是使每次循环中set a 的变量均不同,这样不至于在PDV上覆盖原先的变量,也就是说  最好是使得 id=id j  x=xj ,j是循环中的数值,但是sas并不认识,她傻傻的把
j当作变量的一部分,我想过用id=id( j)  x=x(j),结果sas也报错,想问问各位好朋友,如何达到以上目的呢?谢谢大家了
It seems you only tell us a half of your problem.

It seems you can rename all variables at ones. Or you may use array .... In this way, you can process you problem in a single step rather than reading a data set several times.

7
xiaosanmao 发表于 2011-7-7 15:25:52
bobguy 发表于 2011-7-7 10:25
shenliang_111 发表于 2011-7-6 19:29
想请问各位好朋友们,如何进行循环中的重命名

比如  do j=1 to 5;
i=j+1;
set  a (keep=id  x  rename=(id=  x=)) point=i;

我想达到的目的是使每次循环中set a 的变量均不同,这样不至于在PDV上覆盖原先的变量,也就是说  最好是使得 id=id j  x=xj ,j是循环中的数值,但是sas并不认识,她傻傻的把
j当作变量的一部分,我想过用id=id( j)  x=x(j),结果sas也报错,想问问各位好朋友,如何达到以上目的呢?谢谢大家了
It seems you only tell us a half of your problem.

It seems you can rename all variables at ones. Or you may use array .... In this way, you can process you problem in a single step rather than reading a data set several times.
at  ones 是神马意思? at once?

8
wmqy2004 发表于 2011-7-9 07:56:46
我发现很多帖子都是英文的,我不明白为什么不用中文呢,这样别人也好理解你的帖子,难道这些热心人都是国际友人?

您需要登录后才可以回帖 登录 | 我要注册

本版微信群
加好友,备注cda
拉您进交流群
GMT+8, 2025-12-31 08:19