Contact
CoCalc Logo Icon
StoreFeaturesDocsShareSupportNewsAboutSign UpSign In
| Download

Домашние задания в R

Project: STAT
Path: R / HW_2 / R_HW_2.tex
Views: 5412
1
\documentclass[a4paper, 11pt]{article}\usepackage[]{graphicx}\usepackage[]{color}
2
%% maxwidth is the original width if it is less than linewidth
3
%% otherwise use linewidth (to make sure the graphics do not exceed the margin)
4
\makeatletter
5
\def\maxwidth{ %
6
\ifdim\Gin@nat@width>\linewidth
7
\linewidth
8
\else
9
\Gin@nat@width
10
\fi
11
}
12
\makeatother
13
14
\definecolor{fgcolor}{rgb}{0.345, 0.345, 0.345}
15
\newcommand{\hlnum}[1]{\textcolor[rgb]{0.686,0.059,0.569}{#1}}%
16
\newcommand{\hlstr}[1]{\textcolor[rgb]{0.192,0.494,0.8}{#1}}%
17
\newcommand{\hlcom}[1]{\textcolor[rgb]{0.678,0.584,0.686}{\textit{#1}}}%
18
\newcommand{\hlopt}[1]{\textcolor[rgb]{0,0,0}{#1}}%
19
\newcommand{\hlstd}[1]{\textcolor[rgb]{0.345,0.345,0.345}{#1}}%
20
\newcommand{\hlkwa}[1]{\textcolor[rgb]{0.161,0.373,0.58}{\textbf{#1}}}%
21
\newcommand{\hlkwb}[1]{\textcolor[rgb]{0.69,0.353,0.396}{#1}}%
22
\newcommand{\hlkwc}[1]{\textcolor[rgb]{0.333,0.667,0.333}{#1}}%
23
\newcommand{\hlkwd}[1]{\textcolor[rgb]{0.737,0.353,0.396}{\textbf{#1}}}%
24
\let\hlipl\hlkwb
25
26
\usepackage{framed}
27
\makeatletter
28
\newenvironment{kframe}{%
29
\def\at@end@of@kframe{}%
30
\ifinner\ifhmode%
31
\def\at@end@of@kframe{\end{minipage}}%
32
\begin{minipage}{\columnwidth}%
33
\fi\fi%
34
\def\FrameCommand##1{\hskip\@totalleftmargin \hskip-\fboxsep
35
\colorbox{shadecolor}{##1}\hskip-\fboxsep
36
% There is no \\@totalrightmargin, so:
37
\hskip-\linewidth \hskip-\@totalleftmargin \hskip\columnwidth}%
38
\MakeFramed {\advance\hsize-\width
39
\@totalleftmargin\z@ \linewidth\hsize
40
\@setminipage}}%
41
{\par\unskip\endMakeFramed%
42
\at@end@of@kframe}
43
\makeatother
44
45
\definecolor{shadecolor}{rgb}{.97, .97, .97}
46
\definecolor{messagecolor}{rgb}{0, 0, 0}
47
\definecolor{warningcolor}{rgb}{1, 0, 1}
48
\definecolor{errorcolor}{rgb}{1, 0, 0}
49
\newenvironment{knitrout}{}{} % an empty environment to be redefined in TeX
50
51
\usepackage{alltt}
52
\usepackage[T2A]{fontenc} % кодировка
53
\usepackage[utf8]{inputenc} % кодировка исходного текста
54
\usepackage[english,russian]{babel} % локализация и переносы
55
\usepackage{indentfirst}
56
\frenchspacing
57
\usepackage{geometry}
58
\geometry{left=2cm, right=1.5cm, top=2cm, bottom=1.5cm}
59
\usepackage{soul}
60
%%% Дополнительная работа с математикой
61
\usepackage{amsmath,amsfonts,amssymb,amsthm,mathtools,bm} %
62
\usepackage{icomma} % "Умная" запятая: $0,2$ --- число, $0, 2$ --- перечисление
63
\usepackage{etoolbox}
64
\usepackage{enumitem}
65
\usepackage{array,tabularx,tabulary,booktabs} % Дополнительная работа с таблицами
66
\usepackage{longtable} % Длинные таблицы
67
\usepackage{multirow} % Слияние строк в таблице
68
69
\usepackage{lastpage}
70
71
\usepackage{url}
72
\IfFileExists{upquote.sty}{\usepackage{upquote}}{}
73
\begin{document}
74
75
% learn more about knitr: https://yihui.name/knitr/
76
77
78
79
\title{Линейная регрессия в R}
80
81
\author{Варвара Кожухова}
82
83
\maketitle
84
85
\section*{Задание}
86
\begin{enumerate}
87
\item Загрузить набор данных для своего варианта, ознакомиться с его содержимым.
88
\item Построить график корреляционного поля для каждого фактора.
89
\item Построить уравнение парной линейной регрессии для каждого фактора.
90
\item Проверить значимость каждого из полученных уравнений регрессии. Показать уравнения регрессии с заданным в варианте доверительным интервалом на графиках.
91
\item Построить прогнозы по каждому из уравнений парной регрессии для заданных в варианте значений факторов.
92
\item Построить уравнение множественной линейной регрессии и получить корреляционную матрицу.
93
\item Построить прогноз по уравнению множественной регрессии для заданных в варианте значений факторов.
94
95
\end{enumerate}
96
97
\section*{Варианты}
98
\noindent \begin{tabularx}{\textwidth}{|X|X|X|X|X|X|} \hline
99
варианта & 1 & 2 & 3 & 4 & 5 \\ \hline
100
Набор данных & airquality & state.x77 & Cars93\footnote{необходимо подключить библиотеку MASS} & Cars93 & Cars93 \\ \hline
101
y & Ozone & Life Exp\footnote{поскольку в названии переменной нельзя использовать символ пробела, данную переменную необходимо переименовать командой colnames, например, в $Life\_Exp$, либо обращаться к ней по номеру столбца [,4].} & Price & Min.Price & Max.Price \\ \hline
102
Факторы и их значения для прогноза & Solar.R = 350, Wind = 8,3, Temp = 80 & Illiteracy = 1,0, Murder = 12, Income = 4000 & Horsepower = 200, RPM = 5200, Passengers = 4 & Horsepower = 210, RPM = 5500, Passengers = 4 & Horsepower = 220, RPM = 6000, Passengers = 6 \\ \hline
103
варианта & 6 & 7 & 8 & 9 & 10 \\ \hline
104
Набор данных & stackloss & longley & longley & LifeCycleSavings & Anscombe\footnote{необходимо подключить библиотеку car} \\ \hline
105
y & stack.loss & GNP & Employed & sr & education \\ \hline
106
Факторы и их значения для прогноза & Air.Flow = 55, Water.Temp = 20, Acid.Conc = 89 & Unemployed = 221, Armed.Forces = 180, Population = 125 & GNP.deflator = 102, Armed.Forces = 170, Population = 110 & pop15 = 35,5, pop75 = 1,5, dpi = 2500, ddpi = 2,15 & income = 3200, young = 347,8, urban = 425 \\ \hline
107
\end{tabularx}
108
109
\section*{Парная линейная регрессия}
110
111
Рассмотрим построение парной линейной регрессии на встроенном наборе данных cars. Будем рассматривать зависимость длины тормозного пути (переменная dist) от скорости (переменная speed). Построим график зависимости длины тормозного пути от скорости автомобиля.
112
113
114
115
\begin{knitrout}
116
\definecolor{shadecolor}{rgb}{0.969, 0.969, 0.969}\color{fgcolor}\begin{kframe}
117
\begin{alltt}
118
\hlstd{d} \hlkwb{<-} \hlstd{cars}
119
\hlkwd{qplot}\hlstd{(}\hlkwc{data}\hlstd{=d, speed, dist)} \hlopt{+}
120
\hlkwd{geom_point}\hlstd{(}\hlkwd{aes}\hlstd{(}\hlkwc{x}\hlstd{=d}\hlopt{$}\hlstd{speed,} \hlkwc{y}\hlstd{=d}\hlopt{$}\hlstd{dist),} \hlkwc{size} \hlstd{=} \hlnum{1}\hlstd{)} \hlopt{+} \hlkwd{theme_bw}\hlstd{(}\hlkwc{base_size} \hlstd{=} \hlnum{12}\hlstd{)} \hlopt{+}
121
\hlkwd{xlab}\hlstd{(}\hlstr{"speed, miles/h"}\hlstd{)} \hlopt{+} \hlkwd{ylab}\hlstd{(}\hlstr{"distance, feet"}\hlstd{)} \hlopt{+}
122
\hlkwd{labs}\hlstd{(}\hlkwc{title} \hlstd{=} \hlstr{"scatter plot"}\hlstd{)}
123
\end{alltt}
124
\end{kframe}
125
\includegraphics[width=\maxwidth]{figure/df1-1}
126
127
\end{knitrout}
128
129
Оценим модель линейной регрессии длины тормозного пути на скорость автомобиля.
130
Для этого командой lm поместим в переменную model модель линейной регрессии, указав dist в качестве зависимой переменной, и через значок ~ переменную speed в качестве регрессора.
131
132
Тип lm представляет собой список из 12 элементов. Посмотрим на коэффициенты уравнения линейной регрессии.
133
134
\begin{knitrout}
135
\definecolor{shadecolor}{rgb}{0.969, 0.969, 0.969}\color{fgcolor}\begin{kframe}
136
\begin{alltt}
137
\hlstd{model} \hlkwb{<-} \hlkwd{lm}\hlstd{(}\hlkwc{data}\hlstd{=d, dist}\hlopt{~}\hlstd{speed)} \hlcom{# базовый пакет stats}
138
\hlstd{model}\hlopt{$}\hlstd{coefficients}
139
\end{alltt}
140
\begin{verbatim}
141
## (Intercept) speed
142
## -17.579095 3.932409
143
\end{verbatim}
144
\end{kframe}
145
\end{knitrout}
146
147
(Intercept) это константа в уравнении регрессии, speed коэффициент регрессии.
148
Таким образом, уравнение регрессии имеет вид:
149
\[dist_i^m = -17.579 + 3.9324 \cdot speed_i\]
150
151
Так же можно посмотреть значения вектора ошибок модели разницу между реальной длиной тормозного пути dist и полученной по модели $dist_i^m$. Выведем первые 10 значений этого вектора с точностью две цифры после запятой. Более полный набор расчетов по модели можно получить командой summary.
152
153
\begin{knitrout}
154
\definecolor{shadecolor}{rgb}{0.969, 0.969, 0.969}\color{fgcolor}\begin{kframe}
155
\begin{alltt}
156
\hlkwd{options}\hlstd{(}\hlkwc{digits} \hlstd{=} \hlnum{3}\hlstd{)}
157
\hlstd{model}\hlopt{$}\hlstd{residuals[}\hlnum{1}\hlopt{:}\hlnum{10}\hlstd{]}
158
\end{alltt}
159
\begin{verbatim}
160
## 1 2 3 4 5 6 7 8 9 10
161
## 3.85 11.85 -5.95 12.05 2.12 -7.81 -3.74 4.26 12.26 -8.68
162
\end{verbatim}
163
\begin{alltt}
164
\hlkwd{summary}\hlstd{(model)} \hlcom{# базовый пакет base}
165
\end{alltt}
166
\begin{verbatim}
167
##
168
## Call:
169
## lm(formula = dist ~ speed, data = d)
170
##
171
## Residuals:
172
## Min 1Q Median 3Q Max
173
## -29.07 -9.53 -2.27 9.21 43.20
174
##
175
## Coefficients:
176
## Estimate Std. Error t value Pr(>|t|)
177
## (Intercept) -17.579 6.758 -2.60 0.012 *
178
## speed 3.932 0.416 9.46 1.5e-12 ***
179
## ---
180
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
181
##
182
## Residual standard error: 15.4 on 48 degrees of freedom
183
## Multiple R-squared: 0.651, Adjusted R-squared: 0.644
184
## F-statistic: 89.6 on 1 and 48 DF, p-value: 1.49e-12
185
\end{verbatim}
186
\end{kframe}
187
\end{knitrout}
188
189
Помимо коэффициентов регрессии, R выводит:
190
\begin{itemize}
191
\item стандартные ошибки коэффициентов (Std. Error);
192
\item наблюдаемые значения t-критерия при проверке значимости коэффициентов регрессии (t value);
193
\item P-значения для коэффициентов регрессии (P-value).
194
\end{itemize}
195
Звездочками или точками в столбце справа R показывает значимость или незначимость коэффициентов: *** значимы на уровне значимости менее 0.001; ** значимы на уровне значимости 0.001; * значимы на уровне значимости 0.01; . значимы на уровне значимости 0.05 и т.д. Эти обозначения приведены в разделе Signif. codes.
196
Коэффициент детерминации (Multiple R-squared) равен 0.6511; скорректированный коэффициент детерминации (Adjusted R-squared) равен 0.6438. Наблюдаемое значения F-критерия проверки значимости уравнения в целом и P-значение:
197
198
F-statistic: 89.57 on 1 and 48 DF, p-value: 1.49e-12
199
200
Таким образом, уравнение регрессии получилось значимым.
201
Проведем на графике полученную линию регрессии с 95\% доверительными интервалами.
202
203
\begin{knitrout}
204
\definecolor{shadecolor}{rgb}{0.969, 0.969, 0.969}\color{fgcolor}\begin{kframe}
205
\begin{alltt}
206
\hlkwd{qplot}\hlstd{(}\hlkwc{data} \hlstd{= d, speed, dist)} \hlopt{+} \hlkwd{stat_smooth}\hlstd{(}\hlkwc{method}\hlstd{=}\hlstr{"lm"}\hlstd{,} \hlkwc{level} \hlstd{=} \hlnum{0.95}\hlstd{)} \hlopt{+}
207
\hlkwd{theme_bw}\hlstd{(}\hlkwc{base_size} \hlstd{=} \hlnum{12}\hlstd{)}
208
\end{alltt}
209
\end{kframe}
210
\includegraphics[width=\maxwidth]{figure/df4-1}
211
212
\end{knitrout}
213
214
Рассчитаем также 95\% доверительные интервалы для параметров линейной регрессии. Полученные по модели значения можно вывести командой fitted.
215
\begin{knitrout}
216
\definecolor{shadecolor}{rgb}{0.969, 0.969, 0.969}\color{fgcolor}\begin{kframe}
217
\begin{alltt}
218
\hlkwd{confint}\hlstd{(model,} \hlkwc{level} \hlstd{=} \hlnum{0.95}\hlstd{)} \hlcom{# базовый пакет stats}
219
\end{alltt}
220
\begin{verbatim}
221
## 2.5 % 97.5 %
222
## (Intercept) -31.2 -3.99
223
## speed 3.1 4.77
224
\end{verbatim}
225
\begin{alltt}
226
\hlkwd{options}\hlstd{(}\hlkwc{digits}\hlstd{=}\hlnum{4}\hlstd{)}
227
\hlkwd{fitted}\hlstd{(model)} \hlcom{# базовый пакет stats}
228
\end{alltt}
229
\begin{verbatim}
230
## 1 2 3 4 5 6 7 8 9 10 11 12
231
## -1.849 -1.849 9.948 9.948 13.880 17.813 21.745 21.745 21.745 25.677 25.677 29.610
232
## 13 14 15 16 17 18 19 20 21 22 23 24
233
## 29.610 29.610 29.610 33.542 33.542 33.542 33.542 37.475 37.475 37.475 37.475 41.407
234
## 25 26 27 28 29 30 31 32 33 34 35 36
235
## 41.407 41.407 45.339 45.339 49.272 49.272 49.272 53.204 53.204 53.204 53.204 57.137
236
## 37 38 39 40 41 42 43 44 45 46 47 48
237
## 57.137 57.137 61.069 61.069 61.069 61.069 61.069 68.934 72.866 76.799 76.799 76.799
238
## 49 50
239
## 76.799 80.731
240
\end{verbatim}
241
\end{kframe}
242
\end{knitrout}
243
244
Рассчитать необъясненную сумму квадратов отклонений и полную сумму квадратов можно, воспользовавшись функцией deviance и уже известными функциями sum и mean. Для того, чтобы построить прогноз по полученной модели, нужно задать значения регрессора и поместить их в новый data.frame.
245
246
\begin{knitrout}
247
\definecolor{shadecolor}{rgb}{0.969, 0.969, 0.969}\color{fgcolor}\begin{kframe}
248
\begin{alltt}
249
\hlstd{RSS} \hlkwb{<-} \hlkwd{deviance}\hlstd{(model)} \hlcom{# базовый пакет stats}
250
\hlstd{TSS} \hlkwb{<-} \hlkwd{sum}\hlstd{((d}\hlopt{$}\hlstd{dist}\hlopt{-}\hlkwd{mean}\hlstd{(d}\hlopt{$}\hlstd{dist))}\hlopt{^}\hlnum{2}\hlstd{)}
251
\hlstd{RSS; TSS}
252
\end{alltt}
253
\begin{verbatim}
254
## [1] 11354
255
## [1] 32539
256
\end{verbatim}
257
\begin{alltt}
258
\hlcom{# создаем новый набор данных}
259
\hlstd{nd} \hlkwb{<-} \hlkwd{data.frame}\hlstd{(}\hlkwc{speed}\hlstd{=}\hlkwd{c}\hlstd{(}\hlnum{40}\hlstd{,}\hlnum{60}\hlstd{))}
260
\hlcom{# Строим прогноз функцией predict}
261
\hlkwd{predict}\hlstd{(model,nd)}
262
\end{alltt}
263
\begin{verbatim}
264
## 1 2
265
## 139.7 218.4
266
\end{verbatim}
267
\end{kframe}
268
\end{knitrout}
269
270
\section*{Множественная линейная регрессия}
271
272
Рассмотрим встроенный набор данных по социально-экономическим показателям в 47 провинциях Швейцарии в 1888 г. Этот набор данных содержит 6 переменных по 47 наблюдений, каждая из которых измеряется в процентах (help(swiss)):
273
Fertility рождаемость;
274
Agriculture % мужчин, занятых в сельском хозяйстве;
275
Examination % призывников, получивших высшую оценку на экзамене в армии;
276
Education % призывников, имеющих образование помимо начального;
277
Catholic % католиков среди населения;
278
Infant.Mortality % детей, умерших до года.
279
Посмотрим на этот набор данных.
280
281
\begin{knitrout}
282
\definecolor{shadecolor}{rgb}{0.969, 0.969, 0.969}\color{fgcolor}\begin{kframe}
283
\begin{alltt}
284
\hlstd{t} \hlkwb{<-} \hlstd{swiss} \hlcom{# встроенный набор данных по Швейцарии}
285
\hlkwd{glimpse}\hlstd{(t)}
286
\end{alltt}
287
\begin{verbatim}
288
## Observations: 47
289
## Variables: 6
290
## $ Fertility <dbl> 80.2, 83.1, 92.5, 85.8, 76.9, 76.1, 83.8, 92.4, 82.4, 82.9, ...
291
## $ Agriculture <dbl> 17.0, 45.1, 39.7, 36.5, 43.5, 35.3, 70.2, 67.8, 53.3, 45.2, ...
292
## $ Examination <int> 15, 6, 5, 12, 17, 9, 16, 14, 12, 16, 14, 21, 14, 19, 22, 18,...
293
## $ Education <int> 12, 9, 5, 7, 15, 7, 7, 8, 7, 13, 6, 12, 7, 12, 5, 2, 8, 28, ...
294
## $ Catholic <dbl> 9.96, 84.84, 93.40, 33.77, 5.16, 90.57, 92.85, 97.16, 97.67,...
295
## $ Infant.Mortality <dbl> 22.2, 22.2, 20.2, 20.3, 20.6, 26.6, 23.6, 24.9, 21.0, 24.4, ...
296
\end{verbatim}
297
\end{kframe}
298
\end{knitrout}
299
300
Встроенный пакет graphics содержит функцию pairs, позволяющую получить все возможные диаграммы рассеяния на одном графике, а также выполнить их сглаживание с помощью опции panel.smooth:
301
\begin{knitrout}
302
\definecolor{shadecolor}{rgb}{0.969, 0.969, 0.969}\color{fgcolor}\begin{kframe}
303
\begin{alltt}
304
\hlkwd{pairs}\hlstd{(swiss,} \hlkwc{panel} \hlstd{= panel.smooth)}
305
\end{alltt}
306
\end{kframe}
307
\includegraphics[width=\maxwidth]{figure/df1_2-1}
308
309
\end{knitrout}
310
311
Функция cor позволяет как вычислить корреляцию между двумя выборками, так и получить корреляционную матрицу для всех переменных из набора данных.
312
313
\begin{knitrout}
314
\definecolor{shadecolor}{rgb}{0.969, 0.969, 0.969}\color{fgcolor}\begin{kframe}
315
\begin{alltt}
316
\hlkwd{options}\hlstd{(}\hlkwc{digits} \hlstd{=} \hlnum{5}\hlstd{)}
317
\hlkwd{cor}\hlstd{(swiss)}
318
\end{alltt}
319
\begin{verbatim}
320
## Fertility Agriculture Examination Education Catholic Infant.Mortality
321
## Fertility 1.00000 0.353079 -0.64588 -0.663789 0.46368 0.416556
322
## Agriculture 0.35308 1.000000 -0.68654 -0.639523 0.40110 -0.060859
323
## Examination -0.64588 -0.686542 1.00000 0.698415 -0.57274 -0.114022
324
## Education -0.66379 -0.639523 0.69842 1.000000 -0.15386 -0.099322
325
## Catholic 0.46368 0.401095 -0.57274 -0.153859 1.00000 0.175496
326
## Infant.Mortality 0.41656 -0.060859 -0.11402 -0.099322 0.17550 1.000000
327
\end{verbatim}
328
\end{kframe}
329
\end{knitrout}
330
331
Существует еще одна функция, позволяющая получить корреляционную матрицу, диаграммы рассеяния и сглаженные распределения одновременно.
332
\begin{knitrout}
333
\definecolor{shadecolor}{rgb}{0.969, 0.969, 0.969}\color{fgcolor}\begin{kframe}
334
\begin{alltt}
335
\hlkwd{library}\hlstd{(}\hlstr{"GGally"}\hlstd{)}
336
\hlkwd{ggpairs}\hlstd{(t)} \hlcom{# функция из пакета GGally}
337
\end{alltt}
338
\end{kframe}
339
\includegraphics[width=\maxwidth]{figure/df1_5-1}
340
341
\end{knitrout}
342
343
Чтобы оценить регрессию рождаемости на остальные переменные, можно воспользоваться уже знакомой функцией lm, а регрессоры перечислить через знак «плюс»:
344
\begin{knitrout}
345
\definecolor{shadecolor}{rgb}{0.969, 0.969, 0.969}\color{fgcolor}\begin{kframe}
346
\begin{alltt}
347
\hlstd{model2} \hlkwb{<-} \hlkwd{lm}\hlstd{(}\hlkwc{data}\hlstd{=t, Fertility}\hlopt{~}\hlstd{Agriculture}\hlopt{+}\hlstd{Education}\hlopt{+}\hlstd{Catholic)}
348
\end{alltt}
349
\end{kframe}
350
\end{knitrout}
351
В данном случае регрессорами стали \% занятых в с/х, \% католического населения и \% имеющих образование выше начального.
352
353
Получить оценки коэффициентов уравнения регрессии, а также проверить основные гипотезы поможет функция summary:
354
\begin{knitrout}
355
\definecolor{shadecolor}{rgb}{0.969, 0.969, 0.969}\color{fgcolor}\begin{kframe}
356
\begin{alltt}
357
\hlkwd{summary}\hlstd{(model2)}
358
\end{alltt}
359
\begin{verbatim}
360
##
361
## Call:
362
## lm(formula = Fertility ~ Agriculture + Education + Catholic,
363
## data = t)
364
##
365
## Residuals:
366
## Min 1Q Median 3Q Max
367
## -15.178 -6.548 1.379 5.822 14.840
368
##
369
## Coefficients:
370
## Estimate Std. Error t value Pr(>|t|)
371
## (Intercept) 86.22502 4.73472 18.211 < 2e-16 ***
372
## Agriculture -0.20304 0.07115 -2.854 0.00662 **
373
## Education -1.07215 0.15580 -6.881 1.91e-08 ***
374
## Catholic 0.14520 0.03015 4.817 1.84e-05 ***
375
## ---
376
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
377
##
378
## Residual standard error: 7.728 on 43 degrees of freedom
379
## Multiple R-squared: 0.6423, Adjusted R-squared: 0.6173
380
## F-statistic: 25.73 on 3 and 43 DF, p-value: 1.089e-09
381
\end{verbatim}
382
\end{kframe}
383
\end{knitrout}
384
Построим прогноз по аналогии с парной линейной регрессией. Отличие заключается лишь в том, что в наборе данных необходимо указать значения каждого фактора.
385
\begin{knitrout}
386
\definecolor{shadecolor}{rgb}{0.969, 0.969, 0.969}\color{fgcolor}\begin{kframe}
387
\begin{alltt}
388
\hlcom{# создаем новый набор данных}
389
\hlstd{nd2} \hlkwb{<-} \hlkwd{data.frame}\hlstd{(}\hlkwc{Agriculture}\hlstd{=}\hlnum{0.5}\hlstd{,} \hlkwc{Catholic}\hlstd{=}\hlnum{0.5}\hlstd{,} \hlkwc{Education}\hlstd{=}\hlnum{20}\hlstd{)}
390
\hlkwd{predict}\hlstd{(model2,nd2)}
391
\end{alltt}
392
\begin{verbatim}
393
## 1
394
## 64.8
395
\end{verbatim}
396
\end{kframe}
397
\end{knitrout}
398
399
Построение прогноза по нескольким точкам выполняется с помощью векторов значений.
400
\begin{knitrout}
401
\definecolor{shadecolor}{rgb}{0.969, 0.969, 0.969}\color{fgcolor}\begin{kframe}
402
\begin{alltt}
403
\hlcom{# создаем новый набор данных}
404
\hlstd{nd2} \hlkwb{<-} \hlkwd{data.frame}\hlstd{(}\hlkwc{Agriculture}\hlstd{=}\hlkwd{c}\hlstd{(}\hlnum{0.5}\hlstd{,}\hlnum{0.8}\hlstd{),} \hlkwc{Catholic}\hlstd{=}\hlkwd{c}\hlstd{(}\hlnum{0.5}\hlstd{,} \hlnum{0.65}\hlstd{),} \hlkwc{Education}\hlstd{=}\hlkwd{c}\hlstd{(}\hlnum{20}\hlstd{,} \hlnum{25}\hlstd{))}
405
\hlcom{# прогнозируем}
406
\hlkwd{predict}\hlstd{(model2,nd2)}
407
\end{alltt}
408
\begin{verbatim}
409
## 1 2
410
## 64.8 59.4
411
\end{verbatim}
412
\end{kframe}
413
\end{knitrout}
414
415
\end{document}
416
417
418
419