【问题标题】:Get one sum from multiple columns从多列中获取一个总和
【发布时间】:2013-05-07 00:59:27
【问题描述】:

我想这有一个简单的功能,但我似乎找不到它。我在一个较大的数据框中有五列,我想添加它们以获得一个总和。这是我所做的,但我想知道是否有更简单的方法来获得相同的结果:

count <- subset(NAMEOFDATA, select=c(COL1,COL2,COL3,COL4,COL5))
colcount <- as.data.frame(colSums(count))
colSums(colcount)

【问题讨论】:

    标签: r


    【解决方案1】:

    sum 函数应该这样做:

     sum(count)
    

    与矢量化的“+”不同,sum 将“折叠”其参数并接受 data.frame 参数。如果某些参数是逻辑的,则 TRUE==1 和 FALSE==0 用于求和,这使得构造 sum(is.na(x)) 可能有用。

    【讨论】:

    • 哈!我知道必须有一个简单的方法。这些是人们在 SAS -> R 过渡的早期阶段面临的问题。谢谢!
    • 是的,如果您来自 SAS 或 SPSS,则应特别注意缺失值的处理方式不同。
    【解决方案2】:

    使用可重现的示例总是更容易,但这里有一个尝试:

    apply( NAMEOFDATA[,paste0("COL",seq(5))], 1, sum )
    

    【讨论】:

      猜你喜欢
      • 2018-12-10
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2010-11-26
      • 1970-01-01
      • 2020-10-09
      • 1970-01-01
      • 2015-05-27
      相关资源
      最近更新 更多