Я использую пользовательскую функцию из здесь , чтобы вычислить стандартные отклонения для столбцов ошибок в гистограмме ggplot. Он работает точно так же, как и при запуске кода, но когда я вяжу файл rmd, он возвращает «Ошибка: невозможно переименовать столбцы, которые не существуют. X Столбец« Длина »не существует».
Код функции:
summarySE <- function(data=NULL, measurevar, groupvars=NULL, na.rm=FALSE,
conf.interval=.95, .drop=TRUE) {
library(plyr)
length2 <- function (x, na.rm=FALSE) {
if (na.rm) sum(!is.na(x))
else length(x)
}
datac <- ddply(data, groupvars, .drop=.drop,
.fun = function(xx, col) {
c(N = length2(xx[[col]], na.rm=na.rm),
mean = mean (xx[[col]], na.rm=na.rm),
sd = sd (xx[[col]], na.rm=na.rm)
)
},
measurevar
)
datac <- rename(datac, c("mean" = measurevar))
datac$se <- datac$sd / sqrt(datac$N)
ciMult <- qt(conf.interval/2 + .5, datac$N-1)
datac$ci <- datac$se * ciMult
return(datac)
}
А затем строка, которая возвращает ошибку:
errorbars <- summarySE(lengths_data, measurevar = "Length", groupvars=c("Site","Animal"))
где "lengths_data" - это мой собственный набор данных, который имеет столбцы "Длина", "Животное" и "Сайт". Я не уверен, что вызывает ошибку вязания, но не вызывает никаких проблем при запуске кода. Есть идеи?