对于数据框中的所有列,获取小于常数的值的分数

时间:2019-01-08 21:51:55

标签: r dataframe summary

我认为应该有一种非常简单的方法来执行此操作,但是我对R的了解还不够。我愚蠢的解决方案是遍历列,计算小于C的值的数量,将其除以行数即可得到分数。像

fracs <- c()
for (j in 1:ncol(df)) {
  frac <- sum(df[,j] < C) / nrow(df)
  fracs <- c(fracs, frac)
}

我觉得应该有一个单一的方法来获得数据框的这种摘要,也许使用dplyr或其他方法即可。理想情况下,输出是带有分数的一行数据帧。 R高手请帮忙。

1 个答案:

答案 0 :(得分:1)

我认为这将非常简单。我认为您只想要colMeans(df < C)

编辑:更清楚一点,df是一个数据框。当我们运行df < C时,结果将是相同维度的逻辑矩阵,其中每个单元i,j存储df[i,j] > C的结果。 colMeans采用列均值,将TRUEFALSE分别视为1和0。