Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- # данные за 2010 год
- T<-read.table("data.txt", header=TRUE, sep="\t", dec = ",", encoding = "UTF-8")
- T
- plot(T$salary, y=T$milk, xlab="средняя зарплата", ylab="цена на молоко")
- T<-T[-which(T$milk>50 & T$salary <30000),c(1:3)]
- T<-T[-which(T$milk>40 & T$salary <20000),c(1:3)]
- # T<-T[-which(T$salary >40000),c(1:3)] при этом корреляция уменьшается
- plot(T$salary, y=T$milk, xlab="средняя зарплата", ylab="цена на молоко")
- cor(T$milk, T$salary) # Корреляция Пиросона средняя
- cor(T$milk, T$salary, method = "spearman") # Спирмена ещё меньше
- cor(T$milk, T$salary, method = "kendall") # Кендалла
- cor.test(T$milk, T$salary) # Проверить значимость коэффициента корреляции
- # p-value < 0,1 значим, средняя зависимость между зарплатами и ценами на молоко
- # Построим линейную регрессию
- regMS<-lm(formula=T$milk ~T$salary)
- summary(regMS)
- # Оба коэффициента значимы
- format(coef(regMS), digits =5)
- # y = 1.7835e+01 + 7.0874e-04*x + eps
- # с удалением выбросов y = 1.6569e+01 + 7.6062e-04*x + eps
- abline(regMS, col="red")
- # Анализ остатков
- mean(regMS$residuals) # Мат. ожидание = 0
- plot(regMS$residuals, main="График остатков", xlab="Номер наблюдения",
- ylab="Остатки")
- abline(h=0) # изначально /\/\ , после удаления выбросов зависимость осталась
- # но выражена меньше
- library("forecast") # подключить библиотеку forecast
- accuracy(regMS) # вывод оценок качества регрессии, в том числе MAPE
- # MAPE 11.7 %
- # Из-за зависимости графика остатков регрессию
- # нельзя использовать для прогнозирования
- # Зависимость линейная
Advertisement
RAW Paste Data
Copied
Advertisement