我认为应该有一种非常简单的方法来执行此操作,但是我对R的了解还不够。我愚蠢的解决方案是遍历列,计算小于C的值的数量,将其除以行数即可得到分数。像
fracs <- c()
for (j in 1:ncol(df)) {
frac <- sum(df[,j] < C) / nrow(df)
fracs <- c(fracs, frac)
}
我觉得应该有一个单一的方法来获得数据框的这种摘要,也许使用dplyr或其他方法即可。理想情况下,输出是带有分数的一行数据帧。 R高手请帮忙。
答案 0 :(得分:1)
我认为这将非常简单。我认为您只想要colMeans(df < C)
编辑:更清楚一点,df
是一个数据框。当我们运行df < C
时,结果将是相同维度的逻辑矩阵,其中每个单元i,j存储df[i,j] > C
的结果。 colMeans
采用列均值,将TRUE
和FALSE
分别视为1和0。