I have an extensive dataframe consisting of the names of beers and their review's there are several repeats for each beer does anyone have any suggestions on how i can combine them to reduce each review set to one listing of the beer name and average of its overall reviews
ie
{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
here is what i have tried so far
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)))
})
Thusfar this code only crashes r ^^^^
should work.