全部版块 我的主页
论坛 数据科学与人工智能 数据分析与数据科学 SAS专版
1228 9
2015-04-09
悬赏 500 个论坛币 已解决
1.jpg

原图尺寸 90.2 KB

1.jpg

1.jpg

原图尺寸 10.48 KB

1.jpg

最佳答案

pobel 查看完整内容

%macro test(list=); %let n=%eval(%sysfunc(count(&list,%str( )))+1); data test; array v {&n}; array tmp {&n} _temporary_ (&list); do i=1 to &n; do j=1 to &n; v(j)=tmp(abs(j-i)+1); end; output; end; drop i j; run; %mend; %test(list=16 8 4 2) %test(list=4 8 12 900 88) %test(list=1 2 3 4 5 6 7)
二维码

扫码加我 拉你入群

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

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

全部回复
2015-4-9 10:30:47
silentzilch 发表于 2015-4-10 02:22
感谢您的回答!
但是我想实现的是输入任意一串数据然后进行排列的macro,而非单纯实现例子中的矩阵,还请 ...
%macro test(list=);
   %let n=%eval(%sysfunc(count(&list,%str( )))+1);

   data test;
       array v {&n};
           array tmp {&n} _temporary_ (&list);
           do i=1 to &n;
              do j=1 to &n;
                     v(j)=tmp(abs(j-i)+1);
                  end;
                 output;
            end;
                drop i j;
        run;
%mend;
%test(list=16 8 4 2)
%test(list=4 8 12 900 88)
%test(list=1 2 3 4 5 6 7)
二维码

扫码加我 拉你入群

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

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

2015-4-9 12:45:13
%let n=4;
data test;
   array v(&n);
   do i=1 to &n;
      do j=1 to &n;
              v(j)=2**(&n-abs(j-i));
      end;
          output;
   end;
   drop i j;
run;
二维码

扫码加我 拉你入群

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

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

2015-4-9 15:26:12
proc iml;
        n=4;
        A=toeplitz(2##(n:1));
        print A;
quit;
二维码

扫码加我 拉你入群

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

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

2015-4-9 15:57:24
learsaas 发表于 2015-4-9 15:26
proc iml;
        n=4;
        A=toeplitz(2##(n:1));
吊炸天
二维码

扫码加我 拉你入群

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

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

2015-4-10 02:22:26
pobel 发表于 2015-4-9 12:45
%let n=4;
data test;
   array v(&n);
感谢您的回答!
但是我想实现的是输入任意一串数据然后进行排列的macro,而非单纯实现例子中的矩阵,还请指教!
二维码

扫码加我 拉你入群

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

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

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

说点什么

分享

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