Статистические исследования в R

КАЗАНСКИЙ ГОСУДАРСТВЕННЫЙ УНИВЕРСИТЕТ

Факультет географии и экологии

Использование языка R для статистической обработки данных

 

 

Учебно-методическое пособие

 

КАЗАНЬ - 2007

 

 

Составители:

доктор биологических наук, доцент А.А.Савельев,

старший преподаватель С.С.Мухарамова,

старший преподаватель А.Г.Пилюгин

 

Учебно-методическое пособие предназначено для студентов естественных факультетов, изучающих курс «Теория вераятности и математическая статистика». Даются основные понятия языка R, разбираются примеры использования операторов, методы анализа и обработки предназначенной для выполнения практических заданий по курсам «ГеостАТИСТИКА» и «Теория вераятности и математическая статистика». Печатается по решению учебно-методической комиссии факультета географии и экологии.

 


 

 

Введение 4

1. Статистические исследования в R 5

2. Статистические оценки 7

2.1. Выборочное среднее 7

2.2. Выборочная дисперсия и СКО 7

2.3. Медиана и мода 8

3. Проверка статистических гипотез 9

3.1. Критерий Х2 Пирсона (Проверка гипотезы о нормальном распределении генеральной совокупности ). 10

3.2. Критерий Фишера (Сравнение дисперсий двух нормальных генеральных совокупностей). 13

3.3. Критерий Стьюдента (Сравнение двух средних нормальных генеральных совокупностей, дисперсии которых неизвестны и одинаковы). 14

3.4. Критерии Бартлетта и Кохрана (Сравнение нескольких дисперсий нормальных генеральных совокупностей по выборкам). 17

4. Дисперсионный анализ 19

5. Корреляционный анализ 22

5.1. Коэффициент корреляции и проверка гипотезы о его значимости. 22

5.2. Показатель ранговой корреляции 23

6. Линейная регрессия 25

Список литературы. 28

 


Введение

Цель этого пособия состоит в том, чтобы описать способы построения основных статистических моделей и использование стандартных статистических тестов для проведения статистичесого анализа с помощью системыR.

R – статистическая система анализа, созданная Россом Ихакой и Робертом Гентлеманом (1996, J.Comput. Граф. Stat., 5: 299-314).R является и языком и программным обеспечением; его наиболее замечательный особенности:

• эффективная обработка данных и простые средства для сохранения результатов,

• набор операторов для обработки массивов, матриц, и других сложных конструкций,

• большая, последовательная, интегрированная коллекция инструментальных средств для проведения статистического анализа,

• многочисленные графические средства,

• простой и эффективный язык программирования, который включает много возможностей.

ЯзыкR - рассматривают как диалект языкаS созданный AT&T БэллЛаборатории.S доступен как программное обеспечение S-PLUS коммерческой системы MathSoft (см.http://www.splus.mathsoft.com для получения дополнительной информации). Есть существенные различия в концепцииR иS (те, кто хочет знатьбольше об этом может читать статью, написанную Gentleman и Ihaka (1996) или R-FAQ (часто задаваемые вопросы) (http://cran.r-project.org/doc/FAQ/R-FAQ.html).

R доступен в нескольких формах: исходный текст программ, написанный на C (и некоторые подпрограммы в Fortran77) и в откомпилированном виде.

R – язык со многими функциями для выполнения статистического анализа и графического отображения результатов, которые визуализируется сразу же в собственном окне и могут быть сохранены в различных форматах (например, jpg, png, bmp, eps, или wmf под Windows, ps, bmp, pictex под Unix).

Результаты статистического анализа могут быть отображены на экране. Некоторые промежуточные результаты (P-values, коэффициент регрессии и т.п.) могут быть сохранены в файле и использоваться для последующего анализа.

R – язык, позволяющий пользователю использовать операторы циклов, чтобы последовательно анализировать несколько наборов данных. Также возможно объединить в отдельную программу различные статистические функции, для проведения более сложного анализа.

 


 

Статистические исследования в R

Широкий диапазон функций доступен вbase пакете. Существует также большое количество других пакетов, которые увеличивают потенциальные возможностиR. Они располагаются отдельнои должны быть загружены в память. Исчерпывающий список таких пакетов, вместе с их описаниями, можно найти в Интернете по адресу:

URL: http://cran.rproject.org/src/contrib/PACKAGES.html.

В пакете base пакете есть основные статистические модели:

lm линейные модели;

glm обобщенные линейные модели;

aov, anova дисперсионный анализ;

В пакете stats пакете есть дополнительные статистические модели, в первую очередь glm – обобщенная линейная модель, позволяющая, например, моделировать логистические или логарифмические зависимости. Пакеты nlme, mgcvпозволяют строить нелинейные модели.

Например, пусть даны два вектора x и y с пятью наблюдениями каждый, и необходимо найти модель линейной регрессии y на x:

> x <-1:5

> y <-rnorm (5)

> lm (y~x)

Call:

lm (formula = y ~ x)

Coefficients(Коэффициенты:):

Intercept x

0.2252 0.1809

Результат подгонки линейной модели lm (y~x) может быть скопирован в объект:

> mymodel<-lm (y~x)

Некоторые функции R позволяют пользователю отобразить полученной модели, среди которых summary()– выводит определенный набор статистических параметров (статистические тесты...), residuals()– отображает остатки регрессии, predict()–- прогнозные значения, и coef()– отображает вектор с оценками параметра.

> summary(mymodel)

lm(formula = y ~ x)

Residuals:

1 2 3 4 5

1.0070 -1.0711 -0.2299 -0.3550 0.6490

Coefficients (Коэффициенты:):

Estimate Std. Error t value Pr(>|t|)(Оценка Станд. отклон t value P value (> |t |))

(Intercept) 0.2252 1.0062 0.224 0.837

x 0.1809 0.3034 0.596 0.593

Residual standard error(СКО): 0.9594 on 3 degrees of freedom

Multiple R-Squared (Коэффициент детерминации R2 ): 0.1059, Adjusted R-squared (Скорректированный R2): -0.1921

F-statistic: 0.3555 on 1 and 3 degrees of freedom(на 1 и 3 степени свободы), p-value: 0.593

> residuals (mymodel)

1 2 3 4 5

1.0070047 -1.0710587 -0.2299374 -0.3549681 0.6489594

> predict(mymodel)

1 2 3 4 5

0.4061329 0.5870257 0.7679186 0.9488115 1.1297044

 

> coef(mymodel)

(Intercept) x

0.2252400 0.1808929

Эти значения можно использовать в последующих вычислениях, например:

> a <-coef (mymodel) [1]

> b <-coef (mymodel) [2]

> newdata <-c (11, 13, 18)

> a+ b*newdata

[1] 2.215062 2.576847 3.481312

Чтобы отобразить элементы результата анализа, можно использовать функцию names (); фактически, эта функция может использоваться с любым объектом вR.

> names (mymodel)

[1] "coef" "residuals" "effects" "rank"

[5] "fitted.values" "assign" "qr" "df.residual"

[9] "xlevels" "call" "terms" "model"

> names(summary (mymodel))

[1] "call" "terms" "residuals" "coef"

[5] "sigma" "df" "r.squared" "adj.r.squared"

[9] "fstatistic" "cov.unscaled"

Сами элементы могут быть извлечены следующим способом:

> summary(mymodel) ["r.squared"]

$r.squared

[1] 0.09504547

Формулы – ключевые элементы в статистических анализах вR. Использование их одинаково для всех функций. Формула имеет форму y ~ модель, где y проанализированный ответ и модель – набор условий, для которых некоторые параметры должны быть оценены.

Эти условия отделены арифметическими символами, но они имеют здесь особенное значение.

a+b совокупный эффект а и b

a:b интерактивный эффект между а и b

a*b идентично a+b+a:b

poly(a,n) полином от а степени n

^n включает все взаимодействия до уровня n, то есть (a+b+c) ^2 идентичен a+b+c+a:b+a:c+b:c

b%in%a эффекты b вложены в а (идентичный a+a:b)

a-b удаляет эффект b, например: (a+b+c) ^n-a:b идентичен a+b+c+a:c+b:c, y~x-1 выполняет регресс через начало координат (идентификатор. Для y~x+0, или 0+y~x)

Отсюда видно, что арифметические операторы вR имеют в формуле различные значения. Например, формула y~x1+x2 определяет модельy = b1x1 +b2x2 + a. Длявключения арифметических операций в формулу, можно использовать функцию i(): формула y~I(x1+x2) определяет модельy = b (x1 + x2) + a.

 

Статистические оценки

Выборочное среднее

 

Описание

Выборочной средней xcp называют среднее арифметическое значение признака выборочной совокупности. Если все значения х1, х2, …,хn признака выборки объема n различны, то

Описание функции

mean(x, ...)

Параметры

x Вектор, матрица или data.frame.

Пример

> x<-c(3.6,7.8,9.6,5.7,8.9)

> mean(x)

7.12 (значение среднего)