在广泛的数据框中组合行名,同时保持与特定行关联的数据

时间:2013-08-21 21:11:33

标签: r plyr sqldf

我有一个广泛的数据框,包括啤酒的名称和他们的评论,每个啤酒有几个重复,任何人都有任何建议,如何我可以将它们结合起来,将每个评论集减少到一个啤酒名称列表和平均值其整体评论

   {original table}
beername         overallreview
Blue moon              4
Blue moon              4
Blue moon              3
Blue moon              1
Blue moon              5
Blue moon              3


  {operation results in}
beername         overallreview
Blue moon             3.333

这是我到目前为止所尝试的内容

library(plyr)
library(sqldf)
# Load Packages plyr & sqldf
beerdata <- read.csv(file.choose())
#Select data from csv file 
summary(beerdata)
#Summary of data

best_beer <- beerdata[,c("reviewoverall","beername")]

refined_best <- ddply(best_beer, .(beername), function(x) {
  if(nrow(x) > 1)
    return(data.frame("beername" = unique(x$beername), "mean_ratings" =      mean(x$reviewoverall)))
})

因此,这段代码只会崩溃r ^^^^

1 个答案:

答案 0 :(得分:0)

ddply(best_beer, .(beername), summarise,
    mean_ratings = mean(reviewoverall))

应该工作。