122 B. Листинги программ
10 3.93 -0.79 | 14.0 3488 31
11 4.24 -1.17 | 12.7 4888 55
12 4.56 -1.88 | 10.5 6237 81
13 4.87 -1.62 | 15.1 2997 65
14 5.18 -1.25 | 10.6 2990 98
15 5.50 -1.04 | 15.2 1748 100
16 | 17.2 2128 69
Модель парной линейной регрессии
1 # Для заданных в файле "regression1.csv"
2 # выборочных векторов x и y построить линейную модель
3 # парной регрессии и проверить её качество:
4 # # # # # # # # # # # # # # # # # # # # # # # #
5 # dat, x, y - таблица и векторы выборочных данных; fit -
6 # линейная модель парной регрессии; xin - вектор абсцисс;
7 # pre - матрица размера 3*n, содержащая ординаты уравнения
8 # регрессии и границы его 0.95-доверительных интервалов.
9 # # # # # # # # # # # # # # # # # # # # # # # # # #
10 dat <- read.table("regression1.csv", head=TRUE)
11 attach(dat); print(dat)
12 fit <- lm(y ~ x); print(summary(fit))
13 xin <- seq(0.9*min(x), 1.1*max(x), length=100)
14 pre <- predict(fit, data.frame(x=xin), interval="confidence")
15 windows(); plot(dat, pch=3); points(mean(x), mean(y))
16 matplot(xin, pre, type="l", lty=c(1,2,2), add=TRUE)
17 windows(); par(mfrow=c(2,1))
18 plot(x, fit[[2]], pch=4); abline(h=0)
19 qqnorm(fit[[2]], pch=4); qqline(as.vector(fit[[2]]))
20 detach(dat)
Модель множественной линейной регрессии
1 # Для заданных в файле "regression2.csv"
2 # выборочных векторов x1, x2 и y построить линейную модель
3 # множественной регрессии и проверить её качество:
4 # # # # # # # # # # # # # # # # # # # # # # # # # # # #
5 # dat, x1, x2, y - таблица и векторы выборочных данных; fit -
6 # линейная модель множественной регрессии; x1i, x2i - векторы абсцисс;
7 # pre - матрица размера 3*n, содержащая ординаты уравнения регрессии
8 # и границы его 0.95-доверительных интервалов.
9 # # # # # # # # # # # # # # # # # # # # # # # #
10 dat <- read.table("regression2.csv", head=TRUE)
11 attach(dat); print(dat)
12 fit <- lm(y ~ x1 + x2); print(summary(fit))
13 x1i <- seq(0.9*min(x1), 1.1*max(x1), len=100)
14 x2i <- seq(0.9*min(x2), 1.1*max(x2), len=100)
15 pre <- predict(fit, data.frame(x1=x1i,x2=x2i), interval="confidence")