У меня есть мои данные (в настоящее время фиктивные данные):
data_for_prediction <- original_data[,c(1,3)]
, если вы хотите воспроизвести проблемы, для этой ошибки достаточно:
data_for_prediction <- data.frame(
diff = c(1,2,3),
f.mean_slope = c (1,2,3)
)
, который состоит только из двух строк: "diff" (Y) и "f.mean_slope" (x)
, затем я делаю выборку целиком:
set.seed(101)
trainingRowIndex <- sample(1:nrow(data_for_prediction), 0.8*nrow(data_for_prediction))
trainingData <- data_for_prediction[trainingRowIndex, ]
testData <- data_for_prediction[-trainingRowIndex, ]
После этого я создаю подгонка:
model_fit <- lm(diff ~ ., data = trainingData, method = "model.frame")
А когда я сейчас пытаюсь что-то предсказать:
newdata <- data.frame(
f.mean_slope = c(1,2,3)
)
distPred <- predict(model_fit, newdata)
И R Studio просто возвращает сообщение об ошибке:
Ошибка в UseMethod («предикат»): нет применимого метода для «предиката», примененного к объекту класса «data.Frame»
, который сводит меня с ума, так как я искал тонны вопросов о inte rnet с несколько похожей проблемой, но никто не работал ...
У кого-нибудь есть идеи?