Я хотел бы написать функцию, вычисляющую различия между первыми двумя столбцами, а затем взять их среднее значение.
errors = function(data, true, pred){
library(dplyr)
mutate(data, Error = data$pred - data$true)
mean_err = mean(data$Error)
return(mean_err)
}
Однако эта функция работает не так, как я ожидал.Например, для источника данных, подобного этому:
true = rnorm(10, 2, 20)
pred = rnorm(10, 1, 20)
dt = data.frame(cbind(true, pred))
Эта функция не генерирует новый столбец с именем «Ошибка» и возвращает NA:
errors(dt, true, pred)
Я ожидал, что функцияЧтобы внести следующие изменения во фрейм данных, затем возьмите среднее значение ошибок.
mutate(dt, Error = pred-true)
Спасибо!