Я провел некоторый анализ, я рассчитал переменные изменения (растения, животные) на основе данных о населении.Я делал это до 2016 года (у меня есть только данные о населении до тех пор).Теперь я пытаюсь сделать регрессионный анализ и предсказания для прогнозирования данных, скажем, на следующие 5 лет.Пожалуйста, посмотрите на эти несколько строк кода и скажите мне, почему я получаю сообщение об ошибке и как это исправить.Спасибо.
wheat<-changes$Wheat
population<-changes$population
wheat_lm<-lm(wheat~population, changes)
wheat_pred<-predict(wheat, wheat_lm, changes, 5)
Ошибка в прогнозеdput (изменения):
structure(list(Year = c(2012, 2013, 2014, 2015, 2016), Wheat = c(-2.0362,
-2.050514486, -2.06581132406556, -2.08093306295772, -2.09539554774528
), Cotton = c(-0.1111, -0.111881033, -0.11271566550618, -0.113540744177685,
-0.11432985234972), Tobacco = c(-0.40932, -0.4121975196, -0.415272513096216,
-0.41831230789208, -0.42121957843193), Soybean = c(1.4804, 1.490807212,
1.50192863380152, 1.51292275140095, 1.52343756452318), Corn = c(-1.6556,
-1.667238868, -1.67967646995528, -1.69197170171535, -1.70373090504227
), Sorghum = c(-1.082, -1.08960646, -1.0977349241916, -1.10577034383668,
-1.11345544772635), Barley = c(-0.162, -0.16313886, -0.1643558758956,
-0.165558960907156, -0.166709595685461), Oat = c(-2.449, -2.46621647,
-2.4846144448662, -2.50280182260262, -2.52019629526971), Potatoes = c(-120.9,
-121.749927, -122.65818145542, -123.556039343674, -124.414753817112
), Alfalfa = c(-2.7506, -2.769936718, -2.79060044591628, -2.81102764118039,
-2.83056428328659), Cattle = c(-4.336, -4.36648208, -4.3990560363168,
-4.43125712650264, -4.46205436353183), Milk_cow = c(-6.842, -6.89009926,
-6.9414994004796, -6.99231117609111, -7.04090773876495), Beef_cow = c(1.686,
1.69785258, 1.7105185602468, 1.72303955610781, 1.73501468102276
), Hogs = c(-41.82, -42.1139946, -42.428164999716, -42.7387391675139,
-43.0357734047281), Lambs = c(-0.4744, -0.477735032, -0.48129893533872,
-0.4848220435454, -0.48819155674804), population = c(313998379,
316204908, 318563456, 320896618, 323127513)), class = "data.frame", row.names = c(NA,
-5L))