0

通过选择最大值将多个变量合并为一个

id v1 v2 v3 v4 v5 v6
1  1  2  5  3  1  1
2  4  2  3     5  1
3  3     2  2  1  3
4  2  1  2  5  7  
5  6  7  1  2  1  7

进入 n1=max(v1,v2), n2=v3,n3=max(v4,v5,v6)

id n1 n2 n3
1  2  5  3
2  4  3  5
3  3  2  3
4  2  2  7
5  7  1  7

我如何在 SAS 中执行此操作?(在 excel 中非常简单。在 R 中相对直观。但在 SAS 中我无法弄清楚!请帮忙!)

感谢您的时间!

4

2 回答 2

4

MAX函数是你的朋友。

data want;
set have;
n1 = max(of v1 v2);
n2 = v3;
n3 = max(of v4 v5 v6);
run;

数组和变量列表也可以使用(例如,n3 = max(of v4-v6);)。

于 2013-07-03T21:03:49.770 回答
1

我同意MAX函数是你想要的,但我会以不同的方式编码。

data want;
set have;
n1 = max(v1, v2);
n2 = v3;
n3 = max(v4, v5, v6);
run;

或者:

data want;
set have;
n1 = max(v1, v2);
n2 = v3;
n3 = max(of v4-v6);
run;
于 2013-07-04T18:29:10.240 回答