楼主: sas头疼中
1752 2

求高手指教,求多个变量中任意两个变量的和sas程序 [推广有奖]

  • 0关注
  • 0粉丝

等待验证会员

学前班

90%

还不是VIP/贵宾

-

威望
0
论坛币
0 个
通用积分
0
学术水平
0 点
热心指数
0 点
信用等级
0 点
经验
33 点
帖子
2
精华
0
在线时间
4 小时
注册时间
2015-7-4
最后登录
2015-7-6

楼主
sas头疼中 发表于 2015-7-4 16:03:39 |AI写论文

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

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

经管之家联合CDA

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

感谢您参与论坛问题回答

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

+2 论坛币
Sas菜鸟一枚,虽然在努力的学习sas,但是还是遇到很多问题。我简要说一下我的问题:假设3个变量a、b、c,我需要得到这3个变量中每两个变量和,也就是变量a和b的和,a和c的和,b和c的和。
如果只有三个变量还可以用很笨的方法写出了,但是变量多了就比较麻烦了。
恳请各位指教!不胜感激!
二维码

扫码加我 拉你入群

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

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

关键词:sas程序 多个变量 求高手 不胜感激 我的问题 sas程序

沙发
Jessup007 发表于 2015-7-4 20:04:52
可以考虑用数组
  1. **20个变量;
  2. data test;
  3.      array x[20];
  4.      do id=1 to 50;
  5.         do i=1 to 20;
  6.             x[i]=int(normal(i)*100);
  7.         end;
  8.         output;
  9.      end;
  10.      drop id i;
  11. run;

  12. data _null_;
  13.     set test;
  14.     array a[*]  _numeric_;
  15.     n=comb(dim(a),2);
  16.     call symput("n",n);
  17. run;
  18. %put &n.;

  19. data final;
  20.     set test;
  21.     array a[*] _numeric_;
  22.     array com[&n.];
  23.     k=0;
  24.     do i=1 to dim(a);
  25.         do j=i+1 to dim(a);
  26.             k+1;
  27.            com[k]=sum(a[i],a[j]);
  28.         end;
  29.     end;
  30.     drop i j k;
  31. run;
复制代码

藤椅
sas头疼中 发表于 2015-7-4 20:52:33
Jessup007 发表于 2015-7-4 20:04
可以考虑用数组
非常感谢!

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

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