【问题标题】:How to calculate and display number of occurrences in R [duplicate]如何计算和显示R中的出现次数[重复]
【发布时间】:2020-01-12 13:48:19
【问题描述】:

我想计算每个变量在所有样本中出现的次数。我有 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

【问题讨论】:

    标签: r dataframe


    【解决方案1】:

    你可以试试:

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

    输出:

    var1 var2 var3 
       4    4    5
    

    【讨论】:

      【解决方案2】:

      一个残酷的解决方案是使用apply函数

      apply(df1[ ,2:ncol(df1)], 2, function(x){sum(x != 0)})
      

      【讨论】:

        【解决方案3】:

        dplyr 变体可能是:

        df %>%
         summarise_at(-1, ~ sum(. != 0))
        
          var1 var2 var3
        1    4    4    5
        

        【讨论】:

          【解决方案4】:

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

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

          【讨论】:

            猜你喜欢
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            相关资源
            最近更新 更多