楼主: 飘者云
3384 3

sas中如何按照变量位置来选取变量 [推广有奖]

  • 0关注
  • 1粉丝

已卖:267份资源

本科生

54%

还不是VIP/贵宾

-

威望
0
论坛币
441 个
通用积分
0.1800
学术水平
1 点
热心指数
3 点
信用等级
1 点
经验
205 点
帖子
15
精华
0
在线时间
163 小时
注册时间
2012-10-8
最后登录
2020-5-5

楼主
飘者云 发表于 2015-6-24 12:56:58 |AI写论文

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

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

经管之家联合CDA

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

感谢您参与论坛问题回答

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

+2 论坛币
如题,有时候我们在处理数据的时候,变量名很乱,想按照变量的位置来选取变量进行分析时,该怎么做?
比如 第一个变量叫 rt  第二个变量叫 tt  第三个变量叫 yi,如果按照变量名来写很麻烦,能不能按照变量的位置来写呢?
二维码

扫码加我 拉你入群

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

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

关键词:处理数据 怎么做 如何

沙发
beijingdizheng 发表于 2015-6-24 15:39:19
可以通过数组试试:
data test3;
set test;
array tt _numeric_;
array dd _character_;
d=tt[1];
f=tt[2];
k=dd[1];
run;

藤椅
berrynight 发表于 2018-11-2 16:12:08
data a;
set b ;
stkcd=substr('00000'||stkcd,length(stkcd),6);run;
先组合字符,然后再按长度截取

板凳
苹果叶 在职认证  发表于 2018-11-2 20:42:15
  1. data test;
  2.   length tt yi rt $5.;
  3.   call missing(of _char_);
  4. run;

  5. %macro getVarName(data = work.test, start = , end = );
  6.   %let varList = ;
  7.   %if . < &start. < &end. %then %do;
  8.     %let dsid = %sysfunc(open(test));
  9.       %do i = &start. %to %sysfunc(min(&end., %sysfunc(attrn(&dsid., nvars))));
  10.         %let varList = &varList. %sysfunc(varname(&dsid., &i.));
  11.       %end;
  12.     %let rc = %sysfunc(close(&dsid.));
  13.   %end;
  14.   %put varList = &varList.;
  15. %mend getVarName;

  16. %getVarName(data = work.test, start = 1, end = 6);
复制代码

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

本版微信群
加好友,备注cda
拉您进交流群
GMT+8, 2026-1-7 16:10