全部版块 我的主页
论坛 数据科学与人工智能 数据分析与数据科学 SAS专版
1982 9
2009-11-24
各位高手:
我有一组数据,有七个不同的变量 (变量名不规则)。 我需要对变量作俩俩乘积。
希望编程序自动生成结果。类似:
i=1.. n
j=1.. n
newvar=var_i * var_j;
i<>j

希望高人指点。
多谢了。
二维码

扫码加我 拉你入群

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

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

全部回复
2009-11-24 08:43:57
1# raymonica

复制代码
二维码

扫码加我 拉你入群

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

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

2009-11-24 09:42:00
data a;
do i=1 to 7;
do j=1 to 7;
if i^=j then output;
end;
end;
run;
proc sql;
create table final as
select *,(i*j) as newvar from a where i<>j;
quit;
二维码

扫码加我 拉你入群

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

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

2009-11-24 09:42:56
不好意思,做的是错的,别介意啊!
二维码

扫码加我 拉你入群

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

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

2009-11-25 02:18:52
多谢牛人指点。回去好好调试。
二维码

扫码加我 拉你入群

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

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

2009-11-25 22:07:57
Here is the simplest way do it.

HTH.

data t1;
  x1=1;x2=2;x3=3;x4=4;
run;

data t2;
  set t1;
  array x(*) x1-x4;
  array y( 6);
  do i= 1 to dim(x)-1;
     do j= i+1 to dim(x);
         n+1;
          y(n)=x(i)*x(j);
          end;
  end;
  drop i j n;
run;

proc print; run;

*************************************************
Obs    x1    x2    x3    x4    y1    y2    y3    y4    y5    y6

  1      1     2     3     4     2     3     4     6     8    12
二维码

扫码加我 拉你入群

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

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

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

说点什么

分享

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