r - Mean of columns with ddply without considering 0 values -
so have data frame dates , values columns. found code calculates mean of values same date.
meanvalues = ddply(df, .(date), summarize, values = mean(values)) now problem considers 0 values, values na, there easy way modify code, exclude 0 or na values?
i appreciate take time me, thank you.
let's create sample data:
df = structure(list(date = structure(c(17115, 17116, 17115, 17115, 17115, 17115, 17115, 17116, 17115, 17116), class = "date"), values = c(12, na, 13, 15, 18, 14, 17, 11, 20, 19)), .names = c("date", "values" ), row.names = c(na, -10l), class = "data.frame") just filter out zeroes in way, such as:
> meanvalues = ddply(df, .(date), summarize, values = mean(values[values>0])) but better replace 0 na @ earlier stage, use na.rm=true in mean call.
> df$values[df$values==0]=na > meanvalues = ddply(df, .(date), summarize, values = mean(values,na.rm=true)) > meanvalues date values 1 2016-11-10 15.57143 2 2016-11-11 15.00000 >
Comments
Post a Comment