楼主: bhqbh
8161 8

找每个变量最大值的问题SAS [推广有奖]

  • 0关注
  • 0粉丝

大专生

21%

还不是VIP/贵宾

-

威望
0
论坛币
1893 个
通用积分
0
学术水平
0 点
热心指数
0 点
信用等级
0 点
经验
247 点
帖子
17
精华
0
在线时间
57 小时
注册时间
2014-6-9
最后登录
2016-5-31

楼主
bhqbh 发表于 2015-7-6 21:48:18 |AI写论文

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

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

经管之家联合CDA

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

感谢您参与论坛问题回答

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

+2 论坛币
请教一下~我有一个变量x
2
3
4
6
1
5
2
1
6
,现在想找出这组的最大值并把该数的序号赋给a

例如这里的最大值是6   a=4(第四个数)

我只会得到最大值是6,但得不到序号



二维码

扫码加我 拉你入群

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

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

关键词:最大值 得不到 最大值

沙发
Crsky7 发表于 2015-7-6 21:55:53
导到matlab当中去做或者用proc iml来做,这样简便

藤椅
bhqbh 发表于 2015-7-6 21:59:30
Crsky7 发表于 2015-7-6 21:55
导到matlab当中去做或者用proc iml来做,这样简便
因为是用SAS在做作业。。而且也不会matlab。。所以。。。还是请教一下SAS怎么做呢

板凳
yang1015661763 发表于 2015-7-7 10:02:23
data p;
input IiD;
cards;
2
3
4
6
1
5
2
1
6
;
run;
proc iml;
use work.p;
read all into P;
close work.p;
m=0;
do i=1 to nrow(p);
m=max(m,p[i]);
end;
print m;
do j=1 to nrow(p);
        if m=p[j] then do;
        print j;
        end;
end;
quit;

报纸
leslieccc 发表于 2015-7-7 13:42:06
输出的时候 输出 _N_ 就行吧。

地板
bhqbh 发表于 2015-7-7 16:03:19
yang1015661763 发表于 2015-7-7 10:02
data p;
input IiD;
cards;
再请教一下,如果我需要在后面的过程中调用 j 值,是赋给一个宏变量么?可是在iml语句中怎么赋给宏呢。。谢谢你呀

7
huangpengfei 发表于 2015-7-7 19:37:09
你的x列最大值有多个时a显示是对应的行号吗?

8
bhqbh 发表于 2015-7-7 21:09:44
huangpengfei 发表于 2015-7-7 19:37
你的x列最大值有多个时a显示是对应的行号吗?
我是数据是这样的:
i         x
x1       1
x2       3
x3       9
x4       9
x5       2
……

而我希望返回有x4和x5

9
mingfeng07 学生认证  发表于 2015-7-7 21:29:28
data a;
input i $  x;
cards;
x1       1
x2       3
x3       9
x4       9
x5       2
;
run;
proc sql;
create table b as select * from a where x=(select max(x) from a);
quit;

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

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