查找列范围内每一行的最大值

问题描述 投票:0回答:2

我有一个数据框,其中包含约900行和十几列。第7列至第11列(因此从7到11)包含0到100(含)之间的数字。我想知道的是如何找到:

a)每行指定列范围的最大值

b)哪一列具有最大值(即列#8的值为100,因此它包含最大的数字)

因此,例如,我希望它返回类似的内容:第142行的最大值在第9列中,或第748行的最大值在第6列中,等等。

r max row multiple-columns
2个回答
1
投票
index = 7:11

a)指定范围内的最大值

apply(dataframe[,index], 1, max)

b)最大索引

apply(dataframe[,index], 1, which.max)

1
投票

我们可以使用rowMaxs

library(matrixStats)
index <- 7:11
rowMaxs(as.matrix(df1[, index]))

或带有pmax

do.call(pmax, df1[, index]))
© www.soinside.com 2019 - 2024. All rights reserved.