全部版块 我的主页
论坛 数据科学与人工智能 数据分析与数据科学 SAS专版
5114 6
2018-01-15
data score;
    array col {100} col1-col100;
    do row =1 to 10;
        do i=1 to 100;
        col(i)=int(uniform(7)*100);
        end;
    end;
    drop row i;
run;
让两两比较小的结果输出到test数据集
二维码

扫码加我 拉你入群

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

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

全部回复
2018-1-15 09:58:02
既然是两两比较取最小,是不是反过来看,全部变量比较,取最大的保留?
你看这是不是你所考虑的结果?
二维码

扫码加我 拉你入群

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

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

2018-1-15 10:15:16
流水不朽 发表于 2018-1-15 09:58
既然是两两比较取最小,是不是反过来看,全部变量比较,取最大的保留?
你看这是不是你所考虑的结果?
我要到结果是将两两比较后将最小值保留,比如第一列col1 与col2比较后输出到test然后col2与col3比较小的输出到test以此类推。
二维码

扫码加我 拉你入群

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

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

2018-1-15 10:32:07
其实我的意思是,你这样循环的比较,最终剩下的不就是最大的没 输出到test里面?那反过来,不就是只是取最大的,要么把最大的踢掉,剩下的不就是test想要的结果?
二维码

扫码加我 拉你入群

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

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

2018-1-15 11:02:39
不知道这个结果是楼主要的吗?
复制代码
二维码

扫码加我 拉你入群

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

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

2018-1-30 00:19:25
Your question is not clear. If you only want one output for the minimun value for each row, then only need MIN function, such as:

data test;
        set score;
        min=min(of col1-col100);
        keep min;
run;

If you want a dataset to for the each comparasion result, then you need ARRAY to do it. The sample code is below:

data test;
        set score;
        array col {100} col1-col100;
        array test {99} test1-test99;
                do i=2 to 100;
                        test(i-1)=min(col(i-1),col(i));
                end;
        keep test:;
run;

GOOD LUCK
二维码

扫码加我 拉你入群

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

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

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

说点什么

分享

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