楼主: iRoss2007
3400 1

[问答] 【求助】sum函数不可以用于二维数组?! [推广有奖]

  • 0关注
  • 6粉丝

硕士生

80%

还不是VIP/贵宾

-

威望
0
论坛币
27691 个
通用积分
3.2888
学术水平
9 点
热心指数
11 点
信用等级
8 点
经验
6866 点
帖子
127
精华
0
在线时间
244 小时
注册时间
2008-12-3
最后登录
2022-9-4

楼主
iRoss2007 在职认证  学生认证  发表于 2011-3-13 18:03:59 |AI写论文

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

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

经管之家联合CDA

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

感谢您参与论坛问题回答

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

+2 论坛币
小弟今日学习sas,碰到如下数据:

year mon1 mon2 mon3 mon4 mon5 mon6 mon7 mon8 mon9 mon10 mon11 mon12
1989 34 65 54 36 66 42 82 46 77 83 73 55
1990 22 76 88 43 55 62 35 77 27 42 33 52

现在想要计算每年各季度的和,写的程序如下:
data sales2(drop=i j mon1-mon12);
infile datalines;
input year mon1-mon12;
array m(4,3) mon1-mon12;
array qrt(4);
do i=1 to 4;
  do j=1 to 3;
  qrt(i)=sum(of m(i,1)-m(1,j));
  end;
end;
datalines;
1989 34 65 54 36 66 42 82 46 77 83 73 55
1990 22 76 88 43 55 62 35 77 27 42 33 52
;
run;

但是,sas的sum函数不认二维数组,把m(i,1)的m(i,j)累加当作了他们相减,请问sum函数真的不能用于二维数组吗?在sum函数里面把需要加的变量都列出来可以正确执行,但我就是想用嵌套循环的方法……求教啊!
二维码

扫码加我 拉你入群

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

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

关键词:Sum infile array Lines Input Sum 数组

文(伪)科(码)男(农), 弹幕爱好者,微软脑残粉,萧亚轩脑残

沙发
275769263 发表于 2011-3-28 23:21:47
这个应该合适你。
data sales1;
input year mon1-mon12;
array m(4,3) mon1-mon12;
array qrt(3)q1-q3;
do i=1 to 4;
        do j=1 to 3;
        qrt(j)=m(i,j);
        end;
        output;
end;
datalines;
1989 34 65 54 36 66 42 82 46 77 83 73 55
1990 22 76 88 43 55 62 35 77 27 42 33 52
;
run;
data sales2;
set sales1;
array qrt(3)q1-q3;
total=0;
do i=1 to 3;
        total+qrt;
end;
run;

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

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