楼主: 阿呆sas
1562 8

sas sum function的问题 [推广有奖]

  • 1关注
  • 0粉丝

高中生

10%

还不是VIP/贵宾

-

威望
0
论坛币
7 个
通用积分
0
学术水平
3 点
热心指数
3 点
信用等级
3 点
经验
561 点
帖子
22
精华
0
在线时间
12 小时
注册时间
2014-6-13
最后登录
2016-10-8

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

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

经管之家联合CDA

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

感谢您参与论坛问题回答

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

+2 论坛币
如果我想相加一千多个variable的值,而且名字不相同,没有规律,不知道是否有简便方法,将他们相加呢 sum(of ....)之类的可以吗?
二维码

扫码加我 拉你入群

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

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

关键词:function CTI Fun Sum UNC function

沙发
wwang111 发表于 2014-6-17 17:10:03 |只看作者 |坛友微信交流群
sum(of aaa -- zzz);

使用道具

藤椅
Tigflanker 发表于 2014-6-17 17:22:31 |只看作者 |坛友微信交流群
信息量过少,你这一千多个变量名至少是存在数据集或者是宏变量?

或者你要把整个一个数据集的所有数值型变量做sum?

使用道具

板凳
幻影斩 发表于 2014-6-17 20:01:45 来自手机 |只看作者 |坛友微信交流群
阿呆sas 发表于 2014-6-17 17:06
如果我想相加一千多个variable的值,而且名字不相同,没有规律,不知道是否有简便方法,将他们相加呢 sum( ...
写个循环取出变量名,拼接到一起

使用道具

报纸
阿呆sas 发表于 2014-6-18 08:12:29 |只看作者 |坛友微信交流群
Tigflanker 发表于 2014-6-17 17:22
信息量过少,你这一千多个变量名至少是存在数据集或者是宏变量?

或者你要把整个一个数据集的所有数值型 ...
恩 存在数据集里的 按每个observation,将变量相加。看到楼下写的建议啦 我试运行下,谢谢~

使用道具

地板
阿呆sas 发表于 2014-6-18 08:13:16 |只看作者 |坛友微信交流群
幻影斩 发表于 2014-6-17 20:01
写个循环取出变量名,拼接到一起
嗯嗯 昨天晚上这么写了写 谢谢~

使用道具

7
Tigflanker 发表于 2014-6-18 11:03:15 |只看作者 |坛友微信交流群
  1. data a;
  2.   input a1 b1 c2 d $ e $;
  3.   cards;
  4.   1 2 3 q w
  5.   6 7 8 a s
  6.   ;run;

  7. *Extract variable list that you need to SUM;
  8. proc contents data = a out = temp noprint;
  9. run;
  10. proc sql noprint;
  11.   select NAME into :name separated by ' '
  12.   from temp
  13.   where type = 1 and substr(name,2,1) = '1'
  14.   ;
  15. quit;

  16. data result;
  17.   set a;
  18.   array all_num_a _numeric_;  *All NUMERIC;
  19.   array some_num_a &name.;  *Assign variables;

  20.   do over all_num_a;
  21.     all_num + all_num_a;
  22.   end;
  23.   do over some_num_a;
  24.     some_num + some_num_a;
  25.   end;
  26. run;
复制代码

使用道具

8
阿呆sas 发表于 2014-6-18 14:03:11 |只看作者 |坛友微信交流群
Tigflanker 发表于 2014-6-18 11:03
好高端啊!看上去~谢谢

使用道具

9
缘oO来如此0o 发表于 2014-6-23 14:53:14 |只看作者 |坛友微信交流群
proc sql;
    select name into :name_list separated by ','  from sashelp.vcolumn where libname='WORK' and memname='A' and type='num';
quit;
data b;
    set a;
    sum=sum(&name_list);
run;

使用道具

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

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

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

GMT+8, 2024-4-26 14:13