我正在尝试查找数据帧中显示奇异列最高值的行的名称,我已经尝试使用
rownames(which.max(df[,1]))
和
rownames(df)[apply(df,1,which.ax)]
然而,第一段代码只给了我一个单词"NULL",第二段代码给了我许多行名的长列表。
使用which.max(df[,1])
可以为我提供正确的编号,但不能提供我要查找的行的相应名称。
感谢的帮助
我们可以进行
rownames(df)[which.max(df[[1]])]
如果我们想要每列
sapply(df, (x) row.names(df)[which.max(x)])
使用max.col
的另一个选项,首先转换数据帧如下:
df <- data.frame(V1 = c(1,2,3,4,5),
row.names = c(1,2,3,4,5))
df
#> V1
#> 1 1
#> 2 2
#> 3 3
#> 4 4
#> 5 5
rownames(df)[max.col(t(df))]
#> [1] "5"
创建于2022-11-01,reprex v2.0.2