gpt4 book ai didi

r - 将具有最大值的列的索引添加为新列

转载 作者:行者123 更新时间:2023-12-01 09:34:51 27 4
gpt4 key购买 nike

我的问题很简单。当数据如下时,

var1    var2    var3
10 40 60
15 10 5

我想添加一个新列 MaxValueVar,它返回在 var1var2 中具有最大值的列的索引var3。也就是我想做一个如下表。

var1    var2    var3    MaxValueVar
10 40 60 3
15 10 5 1

在 R 中我会使用:

apply(vector, 1, which.max)

我如何使用 SAS 来完成这项工作?

最佳答案

根据您在此处提供的示例提供一个解决方案供您引用。你没有提到如何处理关系。这里对于平局,获取第一个匹配项。

data test;
input var1 var2 var3;
datalines;
10 40 60
15 10 5
run;

data test;
set test;
maxvalue=max(of var1-var3);
maxvaluevar=0;
array vars (*) var1-var3;
do i=1 to dim(vars);
if maxvaluevar=0 then maxvaluevar=i*(maxvalue=vars(i))+maxvaluevar;
end;
drop i maxvalue;
run;

关于r - 将具有最大值的列的索引添加为新列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10004948/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com