计算乘法列中每个值的百分比.基于使用R的每列中的最大值



我正试图形成一个循环,它从每列中获取最大值,然后使用它来计算每列中其他值的百分比。以前有人问过类似的问题,但给出的解决方案是以与我需要的相反的方式计算百分比。

我的df

d157.77196.43
a b c
1115.68 67.52 151.13 183.32
1083.16 53.75 202.56
1076.69 56.07

您可以在行中找到最大值,而不是在列中。循环版本:

output <- df
for (i in 1:ncol(df)) {
highvalue <- max(df[, i])
output[, i] <- output[, i] / highvalue * 100
}

但是你可以使用好版本的代码:

library(dplyr)
output <- df / df %>% lapply(max) * 100

最新更新