- •Описательная статистика и подгонка распределений.
- •Классические критерии
- •Оценка значимости корреляции (линейной и монотонной). (Lab03).
- •Линейная модель, функция lm(), (Lab04, Lab05). Зависимая переменная y, независимый переменные скаляр x1 и фактор g1. Построить модель от переменных и их взаимодействий.
- •Дисперсионный анализ (Lab03, Lab04).
- •Развитие линейной модели (Lab05)
- •1.026586 2.009046 1.971255 2.073800 #Получили коэффициенты модели
Развитие линейной модели (Lab05)
Модели сглаживания LOESS, функция loess().
Построим модели loess(y~x1) для span=0.25, 0.50, 0.75
Моделирование нелинейных зависимостей: полиномиальные модели, функция
p.lm<-lm(y~poly(x, degree=3))
summary(p.lm)
Call:
lm(formula = y ~ poly(x, degree = 3))
Residuals:
Min 1Q Median 3Q Max
-2.15590 -0.71150 -0.03369 0.55222 2.24663
Coefficients:
Estimate Std. Error t value Pr(>|t|)
(Intercept) 3.72134 0.09152 40.663 < 2e-16 *** значимо
poly(x, degree = 3)1 10.71305 0.91516 11.706 < 2e-16 *** значимо
poly(x, degree = 3)2 2.44803 0.91516 2.675 0.00879 ** значимо
poly(x, degree = 3)3 2.51555 0.91516 2.749 0.00715 ** значимо
---
Residual standard error: 0.9152 on 96 degrees of freedom
Multiple R-squared: 0.6125, Adjusted R-squared: 0.6004 #60%объясненной дисперсии
F-statistic: 50.58 on 3 and 96 DF, p-value: < 2.2e-16
Прогноз модели:
Линейные модели от одной переменной с различными функциями потерь (ошибки модели), функция lmodel2().
Call: lmodel2(formula = y ~ x1, range.y = "relative", range.x = "interval",
nperm = 999)
n = 100 r = 0.8099158 r-square = 0.6559636
Parametric P-values: 2-tailed = 1.941527e-24 1-tailed = 9.707636e-25
Angle between the two OLS regression lines = 8.069737 degrees
Regression results
Method Intercept Slope Angle (degrees) P-perm (1-tailed)
1 OLS 3.0605967 2.116599 64.71132 0.001
2 MA 0.9964318 3.079024 72.00733 0.001
3 SMA 1.9951733 2.613356 69.06067 NA
4 RMA 1.9168362 2.649881 69.32473 0.001
Confidence intervals
Method 2.5%-Intercept 97.5%-Intercept 2.5%-Slope 97.5%-Slope
1 OLS 2.2275904 3.893603 1.809321 2.423877
2 MA -0.1083611 1.844531 2.683594 3.594137
3 SMA 1.2975253 2.615598 2.324081 2.938638
4 RMA 1.0195109 2.684168 2.292110 3.068263
Полученные модели:
Y=3.060 +2.117X (OLS)
Y=0.996 +3.079X (MA)
Y=1.995 + 2.613X (SMA)
Y=1.917 +2.650X (RMA)
Робастные линейные модели урезанных квадратов LTS от одной переменной, функция lmrob().
library(robustbase)
summary(lmrob(y~ x1))
Call:
lmrob(formula = y ~ x1)
\--> method = "MM"
Residuals:
Min 1Q Median 3Q Max
-8.2843 -0.6483 0.0839 0.7120 22.6000
Coefficients:
Estimate Std. Error t value Pr(>|t|)
(Intercept) 1.06204 0.17614 6.029 2.91e-08 ***
x1 2.93578 0.07268 40.396 < 2e-16 ***коэф.значимы
---
Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
Robust residual standard error: 1.186
Multiple R-squared: 0.9382, Adjusted R-squared: 0.9376
Convergence in 7 IRWLS iterations
Полученная модель:
Y=1.062+2.936X
Доля объясненной дисперсии велика: 93%
Робастные линейные модели Хубера от одной переменной, функция rlm().
library(MASS)
summary(rlm(y~ x1))
Call: rlm(formula = y ~ x1)
Residuals:
Min 1Q Median 3Q Max
-4.7922 -0.7831 -0.0910 0.8478 34.2955
Coefficients:
Value Std. Error t value
(Intercept) 0.8360 0.2296 3.6421
x1 3.0398 0.0951 31.9480
Residual standard error: 1.219 on 98 degrees of freedom
Полученная модель:
Y=0.836+3.0.40X
Регуляризация (гребневая регрессия), функция lm.ridge() с выбором параметра регуляризации lambda.
p<-read.table("task-6.6-01.dat",header=T)
head(p)
x1 x2 x3 y
1 4.1210527 4.2283144 4.0742916 26.288883
2 3.6944901 2.7601018 2.5792715 18.513952
3 1.1419793 1.0208849 1.7381865 9.661248
4 1.6011813 0.3864666 2.9229826 11.716295
5 0.8746350 0.7331076 0.7583375 5.765868
library(MASS)
M.ridge <- lm.ridge(y~.,data=p,lambda=seq(0,1,0.1))
plot(x=M.ridge$lambda, y=M.ridge$GCV, type="o")
Лямбда доставляет минимум критерию GCV, когда равна примерно 0.5
(lambda <- M.ridge$GCV[which.min(M.ridge$GCV)])
0.5
0.009855079
(M.ridge1 <- lm.ridge(y~.,data=p,lambda=lambda))
x1 x2 x3
