楼主: hansenlin369
1195 7

求教:同一组内选某个值最大的一行 [推广有奖]

  • 2关注
  • 0粉丝

初中生

28%

还不是VIP/贵宾

-

威望
0
论坛币
5 个
通用积分
0
学术水平
0 点
热心指数
0 点
信用等级
0 点
经验
87 点
帖子
13
精华
0
在线时间
5 小时
注册时间
2011-5-12
最后登录
2015-5-17

楼主
hansenlin369 发表于 2013-4-13 17:02:44 |AI写论文

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

求职就业群
赵安豆老师微信:zhaoandou666

经管之家联合CDA

送您一个全额奖学金名额~ !

感谢您参与论坛问题回答

经管之家送您两个论坛币!

+2 论坛币
数据结构如下面这样,我想从每个组里(每个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


二维码

扫码加我 拉你入群

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

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

关键词:最大的 Sample value type alue 最大的

沙发
pobel 在职认证  发表于 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;
和谐拯救危机

藤椅
hansenlin369 发表于 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来解决啊?

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

请问一下,是不是SAS里在data set 部分的处理,都可以 ...
很多种情况data步和SQL都能够解决问题。
只是有的情况data步处理起来比较简单,有的情况sql比较方便
已有 1 人评分经验 论坛币 学术水平 收起 理由
Imasasor + 100 + 100 + 2 对论坛有贡献

总评分: 经验 + 100  论坛币 + 100  学术水平 + 2   查看全部评分

和谐拯救危机

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

地板
rdwalk 发表于 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;

7
hansenlin369 发表于 2013-6-25 04:11:10
rdwalk 发表于 2013-4-14 11:34
proc sort data=test;
  by type value;
run;
谢谢!不好意思,刚看到

8
ejason 发表于 2013-6-25 14:11:05
两种风格迥异的程序啊

您需要登录后才可以回帖 登录 | 我要注册

本版微信群
加好友,备注cda
拉您进交流群
GMT+8, 2026-1-1 06:53