计算R中每列的数值

时间:2014-05-05 13:53:04

标签: r counter numeric

我想计算数据框(全部)中每列的数值:

NE001710    NE001360    NE001398    NE001380    NE001707
-0.12        -0.61       -0.61        -0.02       0.13
-0.58        -0.43       -0.24        -0.27      -0.47
  NA          0.19       -0.37        -0.14      -0.53
  NA         -0.13       -0.27        -0.38       0.05
  NA          NA          0.32        -0.34       0.01

预期输出可以是这样的:res <- c("2","4","5","5","5")

干杯!

1 个答案:

答案 0 :(得分:2)

如果您已经知道所有列都只包含数字数据和NA值,那么您真的只想计算非NA值的数量,这可以很容易地像这样做:

colSums(!is.na(all))
# NE001710 NE001360 NE001398 NE001380 NE001707 
#        2        4        5        5        5 

或者,您可以这样做:

## sapply(all, function(x) length(na.omit(x)))
vapply(all, function(x) length(na.omit(x)), 1L)
# NE001710 NE001360 NE001398 NE001380 NE001707 
#        2        4        5        5        5