在每行中查找最大值并报告列名

史波克先生

我有一个这样的数据框:

 V1      V2     V3    
 0.4    -0.9    0.6
 0.8    -0.2    0.4
-0.6     0.1    0.8

我想获得最大值(符号无关紧要)并在最后打印一列中具有最高值的列的名称。

我想要这个:

 V1      V2     V3     MAX 
 0.4    -0.9    0.6    V2
 0.8    -0.2    0.4    V1
-0.6     0.1    0.8    V3

有任何想法吗?

罗纳克·沙阿

我们可以使用max.col数据框的绝对值。

df$MAX <- names(df)[max.col(abs(df))]

df
#    V1   V2  V3 MAX
#1  0.4 -0.9 0.6  V2
#2  0.8 -0.2 0.4  V1
#3 -0.6  0.1 0.8  V3

类似地,我们也可以apply逐行使用解决方案来获取每一行的最大值

names(df)[apply(abs(df), 1, which.max)]
#[1] "V2" "V1" "V3"

数据

df <- structure(list(V1 = c(0.4, 0.8, -0.6), V2 = c(-0.9, -0.2, 0.1
), V3 = c(0.6, 0.4, 0.8)), class = "data.frame", row.names = c(NA, 
-3L))

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

查找每行具有前3个最大值的列名称

来自分类Dev

每行的最大值

来自分类Dev

每行的最大值

来自分类Dev

当我尝试查找每行具有最大值的列名时,为什么`idxmax`会引发错误?

来自分类Dev

查找每行最大值的索引的最快方法

来自分类Dev

每行减去最大值

来自分类Dev

如何从每行列值组中获取最大值

来自分类Dev

在数据框中查找具有相关列名和索引的最大值

来自分类Dev

ndarray每行中的N个最大值

来自分类Dev

每行中的最大值数以及更多

来自分类Dev

在C中查找char的最大值

来自分类Dev

在CUDA中查找矩阵的最大值

来自分类Dev

在嵌套列表中查找最大值

来自分类Dev

在列表中查找最大值

来自分类Dev

在行中查找最大值

来自分类Dev

在熊猫列中查找最大值

来自分类Dev

查找文件中的最大值

来自分类Dev

从复杂哈希中查找最大值

来自分类Dev

查找表格中的多个最大值

来自分类Dev

如果条件为真,则在连续 3 行中查找最大值并将其报告在新列中 - r

来自分类Dev

大熊猫:查找列名和值,每一行的最大值(和第二最大值)

来自分类Dev

熊猫:查找列名和值,每一行的最大值(和第二最大值)

来自分类Dev

每行n个最大值

来自分类Dev

如何识别每行最大值的列

来自分类Dev

R:每行最大值对应的索引

来自分类Dev

返回行中3个最大值的列名称

来自分类Dev

在Python中查找列表的最小值,最大值

来自分类Dev

在.json中查找最大值和最小值

来自分类Dev

在.json中查找最大值和最小值