如何在R中计算和显示出现次数

4
我想计算每个变量在所有样本中出现的次数。我有20个变量(var1、var2、var3等)和1000个样本(ID 1、2、3等)。
df1 :
ID   var1   var2   var3
1    10       57     16               
2    8        66     34               
3    7         0     57               
4    0        90     94               
5    20       44     33  

物种在df1中出现的样本数量是多少,这是否意味着与0不同:

result :
var1    var2  var3
 4        4      5
4个回答

2

您可以尝试以下方法:

colSums(df1[,2:4]>0)

输出:

var1 var2 var3 
   4    4    5

1
一种 dplyr 的变体可能是:

df %>%
 summarise_at(-1, ~ sum(. != 0))

  var1 var2 var3
1    4    4    5

1
一种残酷的解决方案是使用apply函数。
apply(df1[ ,2:ncol(df1)], 2, function(x){sum(x != 0)})

0

假设负数出现是不可能的,符号解决方案的总和有效。

colSums(sign(df1[names(df1) != "ID"]))

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接