如何根据另一列对一列进行求和

时间:2016-12-06 09:56:53

标签: r dataframe sum aggregate analysis

这是我的第一篇文章,请原谅任何违规行为。我正在使用R进行文本分析,目前正在尝试总结我的数据框的列以另一列为条件。具体来说,我的结果' dfResults'看起来如下:

dfResults

我想计算所有正面词(1)的单词频率,并分别计算所有负面单词(-1)的频率,以便我可以轻松计算情绪分数。这可能很容易,但我尝试了聚合和求和函数,但它没有用。非常感谢帮助!

2 个答案:

答案 0 :(得分:-1)

希望这是你想要的:

library(dplyr)
data %>% group_by(sentiment) %>% summarise(x = sum(freq))

答案 1 :(得分:-1)

上述答案都可行。另外,如果你想在不使用任何库的基础上进行,那么你至少有两个选项

  1. split()数据并将结果列表与lapply / sapply相加,或者
  2. use aggregate()
  3.   
      lapply ( ( split(df$freq,df$sentiment) ), sum)    
      aggregate(df$freq, by=list(df$sentiment), FUN=sum)
    

    编辑/更正 - aggregate不是来自基地,而是来自stats套餐。但是,鉴于stats也是默认包之一,它在R会话中可用。