我正在研究R代码。我有一个有产品(变量)的数据集,在它下面我有10年的年度开支。现在我想进行行搜索并找到最大年度支出并提取最大值的变量/字段名称。
答案 0 :(得分:0)
假设每个变量在R data.frame df中创建自己的列,我会按如下方式解决问题。 首先提取每行的最大值
(澄清:我正在使用包dplyr中的pip运算符“%>%”)
maxRow <- sapply(t(df) %>% as_data_frame(),max)
然后收集包含每行最大值的列名
sapply(1:nrow(df),function(idx){names(df)[df[idx,] == maxV[idx]]})
或者使用催化剂建议:
sapply(1:nrow(df),function(idx){which.max(df[idx,]) %>% names()})