全部版块 我的主页
论坛 数据科学与人工智能 数据分析与数据科学 SAS专版
1224 7
2013-04-13
数据结构如下面这样,我想从每个组里(每个type里),选出并保留value 最大的那一行。请问该怎么写代码?非常感谢!

type   sample_name      value
1        1_1                    0.95
1        1_2                    0.92
1        1_3                    0.93
2        2_1                    0.98
2        2_2                    0.92
2        2_3                    0.91
2        2_4                    0.95
3        3_1                     0.92
3        3_2                     0.97
4        4_1                     0.95
4        4_2                     0.96
4        4_3                      0.98


二维码

扫码加我 拉你入群

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

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

全部回复
2013-4-13 17:28:17
data test;
   input type $   sample_name $      value;
   cards;
1        1_1                    0.95
1        1_2                    0.92
1        1_3                    0.93
2        2_1                    0.98
2        2_2                    0.92
2        2_3                    0.91
2        2_4                    0.95
3        3_1                     0.92
3        3_2                     0.97
4        4_1                     0.95
4        4_2                     0.96
4        4_3                      0.98
;

proc sql;
  create table wanted as
    select distinct *
           from test
           group by type
           having value=max(value);
quit;
二维码

扫码加我 拉你入群

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

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

2013-4-13 17:43:33
pobel 发表于 2013-4-13 17:28
data test;
   input type $   sample_name $      value;
   cards;
我用你的这个方法把问题解决了。太感谢了!!!

请问一下,是不是SAS里在data set 部分的处理,都可以用proc sql来解决啊?
二维码

扫码加我 拉你入群

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

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

2013-4-13 17:52:38
hansenlin369 发表于 2013-4-13 17:43
我用你的这个方法把问题解决了。太感谢了!!!

请问一下,是不是SAS里在data set 部分的处理,都可以 ...
很多种情况data步和SQL都能够解决问题。
只是有的情况data步处理起来比较简单,有的情况sql比较方便
二维码

扫码加我 拉你入群

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

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

2013-4-13 18:08:32
pobel 发表于 2013-4-13 17:52
很多种情况data步和SQL都能够解决问题。
只是有的情况data步处理起来比较简单,有的情况sql比较方便
先记下了,以后慢慢体会。谢谢!
二维码

扫码加我 拉你入群

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

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

2013-4-14 11:34:48
proc sort data=test;
  by type value;
run;
data fin;
  set test;
  by type;
  if last.type then output;
run;
二维码

扫码加我 拉你入群

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

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

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

说点什么

分享

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