楼主: wylkwq
9535 10

[问答] sas中如何按照一定规律增加一列数据 [推广有奖]

  • 0关注
  • 0粉丝

大专生

80%

还不是VIP/贵宾

-

威望
0
论坛币
0 个
通用积分
0
学术水平
0 点
热心指数
1 点
信用等级
0 点
经验
449 点
帖子
42
精华
0
在线时间
34 小时
注册时间
2010-10-28
最后登录
2013-4-1

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

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

经管之家联合CDA

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

感谢您参与论坛问题回答

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

+2 论坛币

比如我有一个数据集已经排好序后,想增加增加一列,用来记录按照这个方法排序的顺序,这一列的观测值为A00001到最后一个,比如A99999,因为我好几种排序方法,所以不想手动,谢谢。

二维码

扫码加我 拉你入群

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

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

关键词:最后一个 数据集 观测值 如何 记录

沙发
zhangzachary 发表于 2011-9-19 16:31:53 |只看作者 |坛友微信交流群
what means 用来记录按照这个方法排序的顺序 ? more detail plz...
寒冰凤凰 My blog: http://blog.sina.com.cn/u/1058955485

使用道具

藤椅
yugao1986 发表于 2011-9-19 16:40:31 |只看作者 |坛友微信交流群
貌似要建立标识变量,一种标识代表一种排序方法
三人行必有我师

使用道具

板凳
dyes0506 发表于 2011-9-19 16:56:42 |只看作者 |坛友微信交流群
data test01;
       set test00;
       rank_num=_n_;
run;
从数据到结论过程关键的是人不是软件......

使用道具

报纸
wylkwq 发表于 2011-9-19 17:57:33 |只看作者 |坛友微信交流群
dyes0506 发表于 2011-9-19 16:56
data test01;
       set test00;
       rank_num=_n_;
这个_n_非常好用
请问有什么办法能够让结果是a00001到a99999么
非常感谢

使用道具

地板
zhangzachary 发表于 2011-9-19 18:43:30 |只看作者 |坛友微信交流群
wylkwq 发表于 2011-9-19 17:57
这个_n_非常好用
请问有什么办法能够让结果是a00001到a99999么
非常感谢
  1. data test;
  2. do num=1 to 99999;
  3. a='A';
  4. y=put(num,$5.);
  5. x=a||y;
  6. x=tranwrd(x," ","0");
  7. output;
  8. end;
  9. keep x;
  10. run;
复制代码
寒冰凤凰 My blog: http://blog.sina.com.cn/u/1058955485

使用道具

7
zhangzachary 发表于 2011-9-19 18:45:29 |只看作者 |坛友微信交流群
wylkwq 发表于 2011-9-19 17:57
这个_n_非常好用
请问有什么办法能够让结果是a00001到a99999么
非常感谢
or what you perfer:
  1. data test2;
  2. set test1;
  3. a='A';
  4. y=put(_n_,$5.);
  5. x=a||y;
  6. x=tranwrd(x," ","0");
  7. output;
  8. end;
  9. drop a y;
  10. run;
复制代码
寒冰凤凰 My blog: http://blog.sina.com.cn/u/1058955485

使用道具

8
YueweiLiu 发表于 2011-9-19 18:49:56 |只看作者 |坛友微信交流群
  1. data want;
  2.         set sashelp.class;
  3.         length desired_var $10;
  4.         desired_var=cats("A",put(_n_,z5.));
  5. run;
复制代码

使用道具

9
wylkwq 发表于 2011-9-19 20:28:19 |只看作者 |坛友微信交流群
非常非常感谢!!!

使用道具

10
dyes0506 发表于 2011-9-20 08:39:35 |只看作者 |坛友微信交流群
wylkwq 发表于 2011-9-19 17:57
这个_n_非常好用
请问有什么办法能够让结果是a00001到a99999么
非常感谢
data test01;
       set test00;
       rank_num=cats('a',put(_n_,z5.));
run;
从数据到结论过程关键的是人不是软件......

使用道具

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

本版微信群
加好友,备注cda
拉您进交流群

京ICP备16021002-2号 京B2-20170662号 京公网安备 11010802022788号 论坛法律顾问:王进律师 知识产权保护声明   免责及隐私声明

GMT+8, 2024-11-5 21:40