21 сентября 2012

Классические методы статистики: коэффициент корреляции



Коэффициент корреляции (\(r\)) - очень удобный показатель степени взаимосвязи между двумя переменными. Он представляет собой безразмерную величину, которая изменяется от \(-1\) до \(+1\). При независимом варьировании переменных, когда связь между ними отсутствует, \(r = 0\). Чем сильнее связь, тем больше величина коэффициента корреляции. При этом положительные значения \(r\) указывают на положительную (= прямую) связь (т.е. при увеличении значений одной переменной в среднем возрастают значения и другой переменной), а отрицательные - на отрицательную (= обратную) связь (при возрастании одной переменной другая уменьшается).

09 сентября 2012

Вышла новая версия графического пакета ggplot2 - v0.9.2



В блоге проекта RStudio проф. Хэдли Уикхэм (Hadley Wickham) объявил о выходе новой версии ggplot2 - самого популярного графического пакета для R. Версия 0.9.2, опубликованная на сайте CRAN 4 сентября, включает ряд существенных изменений, которые, прежде всего, касаются шаблонов графиков ("themes", как называют их создатели пакета). Теперь изменять исходные настройки шаблонов стало проще (см. примеры здесь). Кроме того, ряду функций были даные новые, более информативные имена (утверждается, что ранее написанный код будет работать и с новыми функциями, но программа будет выдавать соответствующие предупреждения). Вот примеры лишь некоторых заметных изменений:
  • Устарело имя функции opts(). Теперь вместо него следует использовать theme()
  • theme_blank(), theme_text(), theme_rect(), theme_line() и theme_segment() также устарели. Их следует заменить на element_blank(), element_text(), element_rect() и element_line()
  • Ранее заголовок графика задавался следующим образом: opts(title = "Title text"). В новой версии это делается при помощи ggtitle("Title text") или labs(title = "Title text").
С дополнительными изменениями можно ознакомиться на github-странице проекта ggplot2.


07 сентября 2012

Классические методы статистики: точный тест Фишера



Одно из условий применимости рассмотренного ранее критерия \(\chi^2\) состоит в том, что ожидаемые частоты в любой из ячеек таблицы сопряженности не должны быть меньше 5 (Гланц 1999). При небольшом числе наблюдений, это условие может не выполняться, и тогда более корректным подходом (с точки зрения получаемых Р-значений) будет использование точного теста Фишера (Fisher’s exact test). Он основан на переборе всех возможных вариантов заполнения таблицы сопряженности при имеющейся численности групп, и поэтому чем эта численность меньше, тем проще выполнить соотвествующие вычисления. Так, вероятность получить некоторую таблицу сопряженности размером 2х2 равна
\[P = \frac{{R}_{1}!{R}_{2}!{C}_{1}!{C}_{2}!}{N!({O}_{11}!{O}_{12}!{O}_{21}!{O}_{22}!)}\]


Столбец 1
Столбец 2
Суммы по строкам
Строка 1
\({O}_{11}\)
\({O}_{12}\)
\({R}_{1}\)
Строка 2
\({O}_{21}\)
\({O}_{22}\)
\({R}_{2}\)
Суммы по столбцам
\({C}_{1}\)
\({C}_{2}\)
\(N\)


01 сентября 2012

RStan: быстрый расчет байесовских моделей со смешанными эффектами в R



В последние лет десять одной из стандартных программ для аналитиков, представляющих байесовскую школу, была система статистических вычислений BUGS (Bayesian inference Using Gibbs Sampler; позднее также ее open-source инкарнации OpenBugs и JAGS). BUGS (может вызываться из R благодаря пакету R2WinBUGS) служит для построения статистических моделей со смешанными эффектами (mixed-effects models; также multilevel models - многоуровневые модели, или hierarchical models - иерархические модели). Будучи основанной на определенном подходе к математическому описанию таких моделей, программа позволяет задать случайным эффектам необходимые статистические распределения, назначить байесовские априорные оценки параметров этих распределений, а также указать взаимодействия между случайными эффектами. Несмотря на развитый математический аппарат таких моделей, расчет их параметров представляет собой нетривиальную вычислительную проблему и требует значительных машинных ресурсов, поскольку параллельно выполняются несколько сотен или тысяч симуляций Монте Карло для каждой случайной переменной. Соответствующие симуляции обычно выполняются по схеме марковских цепей с использованием сэмплера Гиббса. К сожалению, расчеты моделей с большим и даже умеренным количеством параметров могут занимать очень много времени и даже оканчиваться неудачей в связи с несходимостью алгоритма.