想象一下,一个数据帧:子集行级,但值必须是列名
set.seed(1234)
data<-data.frame(id = sample(letters, 26, replace = FALSE),
a = sample(1:10,26,replace=T),
b = sample(1:10,26,replace=T),
c = sample(1:10,26,replace=T))
我想保留,每个id
,列名其中最大的价值所在。
我正在寻找的结果是一个数据框,尺寸为26 x 2,列为id
,列为largest_value_var
。 largest_value_var
将包含a
,b
或c
。
到目前为止,我已经能够提取与最大值使用此关联的变量名:
apply(data[,-1], 1, function(x) c(names(x))[which.max(x)])
但我似乎无法完全得到我想要到一个结果dataframe ... 任何帮助表示赞赏。
我比你喜欢你的评论解决方案。等等...你删除了它? –
@BonddedDust,no。自从他在我面前想到'max.col'后,我把它交给了理查德。哦,并感谢您的其他评论今天:-) – A5C1D2H2I1M1N2O1R2T1