全部版块 我的主页
论坛 数据科学与人工智能 数据分析与数据科学 SAS专版
2358 6
2010-04-05
小弟刚学SAS,请教各位达人一个问题,首先表示真诚的谢意。
问题:四个变量,x1 x2 x3 x4.各变量30个测。
现在我要计算,x1*X2,x1*x3,x1*x4
                               .........
                                              X3*x4,
即四个变量间的两两相乘。
请问怎么实现。及计算结果怎么以30*16行的矩阵,输出来。
偶试着嵌套了一个do循环,失败,请高手贴过程出来吧。
再次感谢。
二维码

扫码加我 拉你入群

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

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

全部回复
2010-4-5 17:23:57
data crackman;
input x1 x2 x3 x4@;
%crackman;
cards;
1 2 3 4
2 3 4 5
1 2 4 5
6 7 4 6
3 8 7 1
9 4 5 2
;
run;
%macro crackman;
%do i=1 %to 3;
  %do j=%eval(&i.+1) %to 4;
  a&i.&j.=x&i. *x&j.;
  output;
  %end;
%end;
%mend;
二维码

扫码加我 拉你入群

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

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

2010-4-5 17:33:30
及计算结果怎么以30*16行的矩阵,输出来。??
不知道什么意思 也不知道怎么做 期待高手来解决
二维码

扫码加我 拉你入群

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

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

2010-4-5 17:34:34
2楼版主好热情,编程经验也丰富,赞一个。
二维码

扫码加我 拉你入群

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

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

2010-4-5 18:16:07
data crackman;
input x1 x2 x3 x4@;
%crackman;
cards;
1 2 3 4
2 3 4 5
1 2 4 5
6 7 4 6
3 8 7 1
9 4 5 2
;
run;
data a;
set crackman;
where a34^=.;
run;
%macro crackman;
%do i=1 %to 3;
  %do j=%eval(&i.+1) %to 4;
  a&i.&j.=x&i. *x&j.;
  output;
  %end;
%end;
%mend;
二维码

扫码加我 拉你入群

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

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

2010-4-5 19:52:45
5# crackman 非常感谢2楼,的帮助,哎,可惜,我宏不懂,狂看几天了。非常感谢啊。2楼。辛苦了。
二维码

扫码加我 拉你入群

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

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

点击查看更多内容…
相关推荐
栏目导航
热门文章
推荐文章

说点什么

分享

扫码加好友,拉您进群
各岗位、行业、专业交流群