Разведывательный анализ данных.

Цели:

  1. Изучить распределение потенциальных регрессоров

  2. Посмотреть корреляцию между контрольными переменными и основным регрессором (потреблением алкоголя)

  3. Выявить взаимосвязи между регрессорами и объясняемой переменной (числом преступлений на душу населения)

В датасет были добавлены новые переменные:

bar - количество ресторанов и баров на одного человека в регионе

income - подушевой доход

poverty - доля населения с доходами меньше прожиточного минимума, установленного в регионе

social - доля социальных выплат в доходе населения

hdi - индекс человеческого развития

alcoholic - число больных алкоголизмом на душу населения

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

Список ФО: 1 - Центральный. 2 - Северо-западный. 3 - Южный. 4 - Северо-Кавказский. 5 - Приволжский. 6 - Уральский. 7 - Сибирский. 8 - Дальневосточный.

library(tidyverse)
library(readxl)
data = read_excel("/Users/pavelponomarev/Downloads/project_data_pochti_final.xlsx")
library(ggplot2)
data$region = data$region %>% as.factor()

Число преступлений на душу населения

Распределение числа преступлений на душу населения:

data %>% 
ggplot(aes(y =crimes)) + geom_boxplot()+
  ggtitle("Распределение числа преступлений на душу")+
  xlab(" ")+
  ylab(" ")

ggplot(data)+geom_density(aes(x=crimes))+
  ggtitle("График эмпирической плотности распределения преступлений на душу")+
  ylab("")+
  xlab("crimes")

Распределение похоже на нормальное.

data %>% 
ggplot(aes(y =crimes, x = region)) + geom_boxplot()+
  ggtitle("Распределение числа преступлений на душу \nв зависимости от принадлежности к Федеральному округу")+
  xlab(" ")+
  ylab(" ")

Распределение числа преступлений отличается в зависимости от принадлежности к тому или иному округу. Значительно выделяется Северный Кавказ (4) - там меньше всего преступлений (это объясняется особенностями региона и, возможно, не очень качественной статистикой). Примерно одинаковое распределение в группах 1,3,5 (Центральный, Южный и Приволжский ФО) - это европейская часть страны. Больше всего преступлений в Сибирском и Дальневосточном ФО (группы 7,8).

Потребление алкоголя на душу населения

Распределение числа преступлений на душу населения:

data %>% 
ggplot(aes(y =alcohol)) + geom_boxplot()+
  ggtitle("Распределение потребления алкоголя на душу")+
  xlab(" ")+
  ylab(" ")

ggplot(data)+geom_density(aes(x=alcohol))+
  ggtitle("График эмпирической плотности потребления алкоголя на душу")+
  ylab("")+
  xlab("alcohol")

Распределение похоже на нормальное (со смещением вправо).

Корреляция между потреблением алкоголя и количеством преступлений. Исходное предположение: в регионах с большим уровнем потребления алкоголя в силу совокупности факторов больше и уровень преступности.

cor.test(data$alcohol,data$crimes)
## 
##  Pearson's product-moment correlation
## 
## data:  data$alcohol and data$crimes
## t = 3.63, df = 83, p-value = 0.000489
## alternative hypothesis: true correlation is not equal to 0
## 95 percent confidence interval:
##  0.1704649 0.5406185
## sample estimates:
##       cor 
## 0.3701417

Тест показал, что корреляция значима и действительно положтельна.

Уровень безработицы

Проверка корреляции между уровнем безработицы и потреблением алкоголя. Исходное предположение: в регионах с более высоким уровнем безработицы больше потребляют алкоголь.

cor.test(data$alcohol,data$unemp)
## 
##  Pearson's product-moment correlation
## 
## data:  data$alcohol and data$unemp
## t = -5.6822, df = 83, p-value = 1.919e-07
## alternative hypothesis: true correlation is not equal to 0
## 95 percent confidence interval:
##  -0.6670922 -0.3562652
## sample estimates:
##        cor 
## -0.5292073

Тест показал, что корреляция между этими двумя переменными не равна нулю. Уровень безработицы будет включен в модель в качестве контрольной переменной.

Взаимосвязь между уровнем безработицы и числом преступлений. Исходное предположение: в регионах с более высоким уровнем безработицы нестабильная социальная обставновка и, следовательно, совершается больше преступлений.

ggplot(data,aes(x = unemp, y = crimes)) + geom_point()+geom_smooth(method = "lm")+
  ggtitle("Взаимосвязь между уровнем безработицы \nи числом преступлений")+
  xlab("unemp")+
  ylab("crimes")
## `geom_smooth()` using formula 'y ~ x'

На графике видно, что для регионов, в которых уровень безработицы меньше 10%, действительно есть положительная взаимосвязь. Однако есть группа регионов с высоким уровнем безработицы и небольшим числом преступлений, из-за которой эту связь невозможно отследить.

График для регионов, в которых уровень безработицы меньше 10%:

data %>% filter(unemp<10) %>% 
ggplot(aes(x = unemp, y = crimes)) + geom_point()+geom_smooth(method = "lm")+
  ggtitle("Взаимосвязь между уровнем безработицы \nи числом преступлений")+
  xlab("unemp")+
  ylab("crimes")
## `geom_smooth()` using formula 'y ~ x'

Какие регионы входят в группу, которая “выбивается из общей картины”?

data %>% filter(unemp>10&crimes<0.015) %>% dplyr::select(name) %>% as.data.frame()
##                            name
## 1    Кабардино-Балкарская Респ.
## 2    Карачаево-Черкесская Респ.
## 3           Республика Дагестан
## 4          Республика Ингушетия
## 5           Республика Калмыкия
## 6 Республика Сев. Осетия-Алания
## 7          Чеченская Республика

Это все кавказские республики. Возможно, их нужно будет выделить в отдельную группу.

ВРП на душу населения (далее ВРП)

Проверка корреляции между ВРП и потреблением алкоголя.

cor.test(data$alcohol,data$vrp)
## 
##  Pearson's product-moment correlation
## 
## data:  data$alcohol and data$vrp
## t = 3.687, df = 83, p-value = 0.0004039
## alternative hypothesis: true correlation is not equal to 0
## 95 percent confidence interval:
##  0.1760965 0.5447146
## sample estimates:
##       cor 
## 0.3751414

Тест показал, что корреляция между этими двумя переменными не равна нулю. ВРП будет включен в модель в качестве контрольной переменной.

Боксплот:

data %>% 
ggplot(aes(y = vrp/1000)) + geom_boxplot()+
  ggtitle("Распределение ВРП")+
  xlab(" ")+
  ylab("ВРП (тыс.руб.)")

В выборке есть очень большие значения. Разница между значением ВРП в отдельных регионах существенная, следовательно, в модели предпочтительнее будет рассматривать не абсолютное изменение, а относительное. Для этого воспользуемся логарифмом.

ggplot(data)+geom_density(aes(x=log(vrp/1000)))+
  ggtitle("График эмпирической плотности распределения ВРП")+
  ylab("")+
  xlab("log(vrp)")

data %>% 
ggplot(aes(y = log(vrp/1000))) + geom_boxplot()+
  ggtitle("Распределение ВРП")+
  xlab(" ")+
  ylab("log(vrp)")

Распределение стало ближе к нормальному.

Взаимосвязь между ВРП и числом преступлений. Исходное предположение: ВРП - это одна из характеристик благосостояния региона. Следовательно, чем больше ВРП, тем меньше должно быть преступлений. Мы ожидаем увидеть линейную отрицательную взаимосвязь.

data %>%
ggplot(aes(x = log(vrp/1000), y = crimes)) + geom_point()+geom_smooth(method = "lm")
## `geom_smooth()` using formula 'y ~ x'

Явной взаимосвязи нет. Возможно, предельный эффект будет равен 0.

Посмотрим на распределение в зависимости от принадлежности к определенному Федеральному Округу.

data %>%
ggplot(aes(x = log(vrp/1000), y = crimes, color = region)) + geom_point()+geom_smooth(method = "lm")
## `geom_smooth()` using formula 'y ~ x'

Для большей части округов взаимосвязь остается незначимой.

ИЧР

Проверка корреляции между ИЧР и потреблением алкоголя. Исходное предположение: в регионах с более высоким ИЧР меньше потребляют алкоголь.

cor.test(data$alcohol,data$hdi)
## 
##  Pearson's product-moment correlation
## 
## data:  data$alcohol and data$hdi
## t = 3.3893, df = 83, p-value = 0.001074
## alternative hypothesis: true correlation is not equal to 0
## 95 percent confidence interval:
##  0.1464351 0.5229409
## sample estimates:
##       cor 
## 0.3486774

Тест показал умеренную корреляцию, следовательно, ИЧР будет включен в модель в качестве контрольной переменной.

Теперь рассмотрим взаимосвязь между ИЧР и числом преступления в регионах. Исходное предположение: в регионах с более низким ИЧР уровень потребления алкоголя выше в связи с более низким уровнем жизни.

ggplot(data,aes(x = hdi, y = crimes)) + geom_point()+geom_smooth(method = "lm")+
  ggtitle("Взаимосвязь между ИЧР \nи числом преступлений")+
  xlab("hdi")+
  ylab("crimes")
## `geom_smooth()` using formula 'y ~ x'

cor.test(data$crimes,data$hdi)
## 
##  Pearson's product-moment correlation
## 
## data:  data$crimes and data$hdi
## t = -0.41613, df = 83, p-value = 0.6784
## alternative hypothesis: true correlation is not equal to 0
## 95 percent confidence interval:
##  -0.2562610  0.1691399
## sample estimates:
##       cor 
## -0.045629

Явной взаимосвязи нет.

Кол-во солнечных дней в году

Проверка корреляции кол-вом солнечных дней в регионах и потреблением алкоголя. Исходное предположение: в регионах с меньшим кол-вом солнечных дней в году больше потребляют алкоголь в связи с более депрессивным состоянием из-за тусклой погоды.

cor.test(data$alcohol,data$sun)
## 
##  Pearson's product-moment correlation
## 
## data:  data$alcohol and data$sun
## t = -7.128, df = 83, p-value = 3.436e-10
## alternative hypothesis: true correlation is not equal to 0
## 95 percent confidence interval:
##  -0.7330582 -0.4640201
## sample estimates:
##        cor 
## -0.6162053

Корреляция заметная, следовательно, кол-во солнечных дней будет включено в качестве контрольной переменной. Отрицательная корреляция свидетельствует о том, что с ростом солнечных дней уровень потребления алкоголя понижается.

Теперь рассмотрим взаимосвязь между кол-вом солнечных дней и числом преступления в регионах. Исходное предположение: в регионах с меньшим кол-вом солнечных дней в году число преступлений выше в связи с более депрессивным состоянием.

ggplot(data,aes(x = sun, y = crimes)) + geom_point()+geom_smooth(method = "lm")+
  ggtitle("Взаимосвязь между кол-вом солнечных дней в году
          \nи числом преступлений")+
  xlab("sun")+
  ylab("crimes")
## `geom_smooth()` using formula 'y ~ x'

Взаимосвязь отрицательная, то есть с ростом кол-ва солнечных дней в целом совершаются меньшее число преступлений.

data %>% filter(sun>200&crimes<=0.011) %>% dplyr::select(region) %>% as.data.frame()
##   region
## 1      4
## 2      3
## 3      4
## 4      4
## 5      4
## 6      4

А вот согласно этой табличке, можно заметить, что в кавказких регионах, где, логично, кол-во солнечных дней много, число преступлений ниже. Это может говорить о том, что из-за большего кол-ва солнечных дней и учитывая специфику регионов (традиции, обычаи) - потребление алкоголя на Кавказе не способствует к большему числу преступлений, так как там отношение к алкоголю особое.

Годовая норма осадков

Проверка корреляции между годовой нормой осадков и потреблением алкоголя. Исходное предположение: в регионах, где больше осадков, больше потребление алкоголя.

cor.test(data$alcohol,data$y_rainfall)
## 
##  Pearson's product-moment correlation
## 
## data:  data$alcohol and data$y_rainfall
## t = 2.3113, df = 83, p-value = 0.0233
## alternative hypothesis: true correlation is not equal to 0
## 95 percent confidence interval:
##  0.03459385 0.43617010
## sample estimates:
##       cor 
## 0.2459049

Корреляция не нулевая, значит можем включить годовую норму осадков как контрольную переменную.

Теперь рассмотрим взаимосвязь между годовой нормой осадков и числом преступления в регионах. Исходное предположение: в регионах с меньшим числом осадков в году число преступлений ниже в связи с более благоприятной погодой.

ggplot(data,aes(x = y_rainfall, y = crimes)) + geom_point()+geom_smooth(method = "lm")+
  ggtitle("Взаимосвязь между годовой нормой осадков \nи числом преступлений")+
  xlab("y_rainfall")+
  ylab("crimes")
## `geom_smooth()` using formula 'y ~ x'

cor.test(data$crimes,data$y_rainfall)
## 
##  Pearson's product-moment correlation
## 
## data:  data$crimes and data$y_rainfall
## t = -1.3211, df = 83, p-value = 0.1901
## alternative hypothesis: true correlation is not equal to 0
## 95 percent confidence interval:
##  -0.3460518  0.0718084
## sample estimates:
##       cor 
## -0.143512

Корреляция незначима.

Сбережения

Проверим, зависимость потребления алкоголя и роста сбережений домохозяйств.

cor.test(data$savings, data$alcohol)
## 
##  Pearson's product-moment correlation
## 
## data:  data$savings and data$alcohol
## t = -0.56891, df = 83, p-value = 0.571
## alternative hypothesis: true correlation is not equal to 0
## 95 percent confidence interval:
##  -0.2718383  0.1528291
## sample estimates:
##         cor 
## -0.06232503

Взаимосвязь между потреблением алкоголя и сбережениями незначима.

Посмотрим на распределение сбережений населения, для этого построим график плотности и боскплот.

data %>% 
ggplot(aes(y=savings)) + geom_boxplot()+
  ggtitle("Распределение сбережений")+
  xlab(" ")+
  ylab("Сбережения в % от располагаемого дохода")

data %>% 
  ggplot(aes(x=savings), adjust=0.1)+geom_density()+
  ggtitle("График эмпирической плотности распределения сбережений")+
  ylab("")+
  xlab("Сбережения в % от располгаемого дохода")

Распределение сбережений похоже на нормальное.

Так же имеет смысл рассмотреть связь сбережений и преступлений графически. Предположительно, с ростом сбережения количество совершаемых преступлений должно падать, проверим это.

cor.test(data$savings, data$crimes)
## 
##  Pearson's product-moment correlation
## 
## data:  data$savings and data$crimes
## t = -0.93316, df = 83, p-value = 0.3534
## alternative hypothesis: true correlation is not equal to 0
## 95 percent confidence interval:
##  -0.3083232  0.1136984
## sample estimates:
##        cor 
## -0.1018948
ggplot(data,aes(x = savings, y = crimes)) + geom_point()+geom_smooth(method = "lm")+
  ggtitle("Взаимосвязь между уровнем сбережений населения \nи числом преступлений")+
  xlab("Сбережения в % от располгаемого дохода")+
  ylab("Количество преступлений")
## `geom_smooth()` using formula 'y ~ x'

Линейной взаимосвязи нет. Возможно, предельный эффект в модели будет 0 или будет зависеть от принадлежности региона к той или иной группе.

ggplot(data,aes(x = savings, y = crimes,color = region)) + geom_point()+geom_smooth(method = "lm")+
  ggtitle("Взаимосвязь между уровнем сбережений населения \nи числом преступлений")+
  xlab("Сбережения в % от располгаемого дохода")+
  ylab("Количество преступлений")
## `geom_smooth()` using formula 'y ~ x'

Для большей части регионов взаисмосвязь остается незначимой.

Алкоголизм

Для начала проверим связь между числом лиц с алкогольной зависимостью и уровнем потребления алкоголя по регионам.

cor.test(data$alcoholic, data$alcohol)
## 
##  Pearson's product-moment correlation
## 
## data:  data$alcoholic and data$alcohol
## t = 4.2125, df = 83, p-value = 6.379e-05
## alternative hypothesis: true correlation is not equal to 0
## 95 percent confidence interval:
##  0.2268567 0.5808581
## sample estimates:
##       cor 
## 0.4196894

Корреляция не равна 0.

Посмотрим на связь количества лиц с алкогольной зависимостью и количества преступлений

ggplot(data,aes(x = alcoholic, y = crimes)) + geom_point()+geom_smooth(method = "lm")+
  ggtitle("Взаимосвязь между количеством алкоголиков \nи числом преступлений")+
  xlab("Алкоголиков на душу населения")+
  ylab("Количество преступлений")
## `geom_smooth()` using formula 'y ~ x'

cor.test(data$alcoholic, data$crimes)
## 
##  Pearson's product-moment correlation
## 
## data:  data$alcoholic and data$crimes
## t = 3.234, df = 83, p-value = 0.001753
## alternative hypothesis: true correlation is not equal to 0
## 95 percent confidence interval:
##  0.130725 0.511206
## sample estimates:
##       cor 
## 0.3345289

На основе результатов можем сделать вывод о том, что связь есть. Больше преступлений совершается в регионах, в которых выявлено большее количество лиц с алкогольной зависимостью и связанными с этим психотическими расстройствами.

Теперь определим, зависит ли количество алкоголиков на душу населения в регионе от дохода.

cor.test(data$alcoholic, data$income)
## 
##  Pearson's product-moment correlation
## 
## data:  data$alcoholic and data$income
## t = 4.4426, df = 83, p-value = 2.723e-05
## alternative hypothesis: true correlation is not equal to 0
## 95 percent confidence interval:
##  0.2483793 0.5957730
## sample estimates:
##       cor 
## 0.4383017
ggplot(data,aes(x = alcoholic, y = income)) + geom_point()+geom_smooth(method = "lm")+
  ggtitle("Взаимосвязь между количеством алкоголиков \nи числом преступлений")+
  xlab("Количество алкоголиков на душу населения")+
  ylab("Уровень дохода")
## `geom_smooth()` using formula 'y ~ x'

Посмотрим на регионы в которых высокий показатель подушевого алкоголизма при относительно выском уровне дохода

data %>% filter(alcoholic>0.001&income>40000) %>% dplyr::select(name) %>% as.data.frame()
##                       name
## 1              Ненецкий АО
## 2        Ямало-Ненецкий АО
## 3      Магаданская область
## 4 Республика Саха (Якутия)
## 5      Сахалинская область
## 6             Чукотский АО

Это восточная Сибирь и Дальний Восток. Опять видно выделение по географическому признаку.

Доля городского населения

Проверка корреляции между долей городского населения и потреблением алкоголя. Исходное предположение: в регионах с большей долей городского населения, больше потребление алкоголя. (Люди живущие в регионах с крупными городами употребляют алкоголь чаще и в бОльших количествах)

cor.test(data$alcohol,data$urban)
## 
##  Pearson's product-moment correlation
## 
## data:  data$alcohol and data$urban
## t = 8.0046, df = 83, p-value = 6.371e-12
## alternative hypothesis: true correlation is not equal to 0
## 95 percent confidence interval:
##  0.5200788 0.7654853
## sample estimates:
##       cor 
## 0.6600428

Корреляция заметная и составила 0.6600428. Доля городского населения будет включена в модель в качестве контрольной переменной. Положительная корреляция говорит о том, что с увеличением доли городского населения увеличивается и количество потребляемого алкоголя.

Рассмотрим взаимосвязь между долей городского населения и числом преступлений. Исходное предположение: в регионах с высокой степенью урбанизированности соврешается больше преступлений, так как в городах выше уровень преступности.

ggplot(data,aes(x = urban, y = crimes)) + geom_point()+geom_smooth(method = "lm")+
  ggtitle("Взаимосвязь между долей городского населения и \nчислом преступлений.")+
  xlab("urban")+
  ylab("crimes")
## `geom_smooth()` using formula 'y ~ x'

Взаимосвязь положительная, то есть с ростом доли городского населения растет и преступность. В нескольких регионах с очень низкой степенью урбанизированности довольно высокий уровень преступности.

data %>% filter(urban<55&crimes>0.02) %>% dplyr::select(name) %>% as.data.frame()
##               name
## 1 Республика Алтай
## 2  Республика Тыва

Республики Алтай и Тыва. Снова выделение по географическому признаку. Также стоит заметить, что именно эти две республики, согласно некоторым исследованиям были названы “беднейшими регионами страны”. https://www.svoboda.org/a/respubliki-altay-i-tuva-priznany-bedneyshimi-regionami-rossii/31341627.html

Доход на душу населения

Проверка корреляции между доходом на душу населения и потреблением алкоголя. Исходное предположение: в регионах с высоким уровнем дохода потребляют больше алкоголя. (Алкоголь является нормальным благом)

cor.test(data$alcohol,data$income)
## 
##  Pearson's product-moment correlation
## 
## data:  data$alcohol and data$income
## t = 5.6145, df = 83, p-value = 2.549e-07
## alternative hypothesis: true correlation is not equal to 0
## 95 percent confidence interval:
##  0.3507391 0.6635725
## sample estimates:
##       cor 
## 0.5246454

Тест показал заметную корреляцию. Доход на душу населения будет включен в модель в качестве контрольной переменной.

Рассмотрим взаимосвязь между доходом на душу населения и числом преступлений. Исходное предположение: в регионах с низким уровнем дохода выше уровень преступности. Следовательно взаимосвязь ожидается отрицательная.

ggplot(data,aes(x = income, y = crimes)) + geom_point()+geom_smooth(method = "lm")+
  ggtitle("Взаимосвязь между доходом и числом преступлений.")+
  xlab("income")+
  ylab("crimes")
## `geom_smooth()` using formula 'y ~ x'

Взаимосвязь не выявлена.

ggplot(data,aes(x = income, y = crimes,color = region)) + geom_point()+geom_smooth(method = "lm")+
  ggtitle("Взаимосвязь между доходом и числом преступлений.")+
  xlab("income")+
  ylab("crimes")
## `geom_smooth()` using formula 'y ~ x'

Для большей части групп по федеральным округам взаимосвязь остается незначимой. Однако выделяется регион №7 (Сибирский ФО). Возможно, имеет смысл рассмотреть кросс-эффект.

Уровень образования

Проверка корреляции между уровнем образования и потреблением алкоголя.

cor.test(data$alcohol,data$educ)
## 
##  Pearson's product-moment correlation
## 
## data:  data$alcohol and data$educ
## t = -0.12526, df = 83, p-value = 0.9006
## alternative hypothesis: true correlation is not equal to 0
## 95 percent confidence interval:
##  -0.2262090  0.1999623
## sample estimates:
##         cor 
## -0.01374771

Тест показал, что корреляция между этими двумя переменными отрицательна и не равна нулю. Уровень образования будет включен в модель в качестве контрольной переменной.

Боксплот:

data %>%
ggplot(aes(y = educ/1000)) + geom_boxplot()+
ggtitle("Распределение уровня образования")+
xlab(" ")+
ylab("Количество студентов в высших учебных заведениях")

В выборке есть очень большие значения. Разница между количеством студентов в высших учебных заведениях в отдельных регионах существенная, следовательно, в модели предпочтительнее будет рассматривать не абсолютное изменение, а относительное. Для этого воспользуемся логарифмом.

ggplot(data)+geom_density(aes(x=educ))+
ggtitle("График плотности распределения уровня образования")+
ylab("")+
xlab("educ")

ggplot(data)+geom_density(aes(x=log(educ/1000)))+
ggtitle("График эмпирической плотности распределения уровня образования")+
ylab("")+
xlab("log(educ)")
## Warning: Removed 2 rows containing non-finite values (stat_density).

data %>%
ggplot(aes(y = log(educ/1000))) + geom_boxplot()+
ggtitle("Распределение уровня образования")+
xlab(" ")+
ylab("log(educ)")
## Warning: Removed 2 rows containing non-finite values (stat_boxplot).

Распределение стало ближе к нормальному, однако левый хвост значительно длиннее, что говорит о левосторонней асимметрии,т.e. чаще встречаются значения меньше среднего.

Рассмотрим взаимосвязь между уровнем образования и числом преступлений.

ggplot(data,aes(x = educ, y = crimes)) + geom_point()+geom_smooth(method = "lm")+
ggtitle("Взаимосвязь между уровнем образования \nи числом преступлений.")+
xlab("educ")+
ylab("crimes")
## `geom_smooth()` using formula 'y ~ x'

Взаимосвязь очень слабая и отрицательная, то есть с ростом уровня образования в регионе преступность сокращается.

Рассмотрим взаимосвязь между уровнем образования и числом преступлений, исключив выбросы (Москва и Санкт-Петербург). `

data %>% filter(educ<130000) %>%
ggplot(aes(x = educ, y = crimes)) + geom_point()+geom_smooth(method = "lm")+
ggtitle("Взаимосвязь между уровнем образования \nи числом преступлений.")+
xlab("educ")+
ylab("crimes")
## `geom_smooth()` using formula 'y ~ x'

Взаимосвязь по-прежнему очень слабая и отрицательная.

Попробуем рассмотрель корреляцию в рамках федеральных округов

ggplot(data,aes(x = educ, y = crimes,color = region)) + geom_point()+geom_smooth(method = "lm")+
ggtitle("Взаимосвязь между между уровнем образования и числом преступлений.")+
xlab("educ")+
ylab("crimes")
## `geom_smooth()` using formula 'y ~ x'

У всех большей части округов очень взаимосвязь остается незначимой и разной по характеру. Однако выделяются регион №2(Северо-западный) и №7(Сибирский ФО). Возможно, имеет смысл рассмотреть кросс-эффект.

Доля бедного населения

Проверка корреляции между долей бедного населения и потреблением алкоголя.

cor.test(data$alcohol,data$poverty)
## 
##  Pearson's product-moment correlation
## 
## data:  data$alcohol and data$poverty
## t = -4.8474, df = 83, p-value = 5.755e-06
## alternative hypothesis: true correlation is not equal to 0
## 95 percent confidence interval:
##  -0.6207039 -0.2851378
## sample estimates:
##        cor 
## -0.4697173

Корреляция не равна 0. Доля населения за чертой бедности будет включена в модель в качестве контрольной переменной.

Рассмотрим взаимосвязь между долей населения за чертой бедности и числом преступлений. Исходное предположение: в регионах с большей долей бедного населения хуже криминогенная обстановка.

ggplot(data,aes(x = poverty, y = crimes)) + geom_point()+geom_smooth(method = "lm")+
  ggtitle("Взаимосвязь между долей населения за чертой бедности \nи числом преступлений.")+
  xlab("poverty")+
  ylab("crimes")
## `geom_smooth()` using formula 'y ~ x'

Выделяется группа с большой долей бедного населения, но маленьким числом преступлений:

data %>% filter(poverty>23&crimes<0.015) %>% dplyr::select(name) %>% as.data.frame()
##                         name
## 1 Кабардино-Балкарская Респ.
## 2 Карачаево-Черкесская Респ.
## 3       Республика Ингушетия
## 4        Республика Калмыкия

Вновь Кавказские республики.

data$kavkaz = data$region==4

В регионах кроме кавказских республик наблюдается скорее положительная взаимосвязь:

ggplot(data,aes(x = poverty, y = crimes, color = kavkaz)) + geom_point()+geom_smooth(method = "lm")+
  ggtitle("Взаимосвязь между долей населения за чертой бедности \nи числом преступлений.")+
  xlab("poverty")+
  ylab("crimes")
## `geom_smooth()` using formula 'y ~ x'

Количество баров и ресторанов

Проверка корреляции между количеством баров и ресторанов и потреблением алкоголя. Исходное предположение: в регионах с большим количеством баров потребляют больше алкоголя.

cor.test(data$alcohol,data$bar)
## 
##  Pearson's product-moment correlation
## 
## data:  data$alcohol and data$bar
## t = 2.9837, df = 83, p-value = 0.00374
## alternative hypothesis: true correlation is not equal to 0
## 95 percent confidence interval:
##  0.1050804 0.4917405
## sample estimates:
##       cor 
## 0.3112343

Корреляция не равна 0 и положительна. Количество баров и ресторанов будет включено в модель в качестве контрольной переменной.

Средняя температура в январе

Проверка корреляции между средней температурой в январе и потреблением алкоголя. Исходное предположение: согласно исследованиям, в более “холодных” регионах больше потребление алкоголя.

cor.test(data$alcohol,data$jan_temp)
## 
##  Pearson's product-moment correlation
## 
## data:  data$alcohol and data$jan_temp
## t = -1.7867, df = 83, p-value = 0.07764
## alternative hypothesis: true correlation is not equal to 0
## 95 percent confidence interval:
##  -0.38959488  0.02155796
## sample estimates:
##        cor 
## -0.1924503

Тест показал, что корреляция незначима.

Рассмотрим взаимосвязь между средней температурой в январе и числом преступлений.

ggplot(data,aes(x = jan_temp, y = crimes)) + geom_point()+geom_smooth(method = "lm")+
  ggtitle("Взаимосвязь между средней температурой в январе \nи числом преступлений.")+
  xlab("jan_temp")+
  ylab("crimes")
## `geom_smooth()` using formula 'y ~ x'

Мы можем видеть достаточно сильную отрицательную взаимосвязь. В регионах с более суровыми зимами совершается больше преступлений.

Корреляционная таблица

Ниже представлена корреляционная таблица, в котором мы можем наблюдать степень зависимости различных переменных с нашим основным регрессором alcohol (потребление алкоголя).

library(kableExtra)
options("scipen"=100, "digits"=4)
data_cor <- data %>% select(-id, -alcohol, -region,-name,-kavkaz)

corr <- function(x) {
cor_f <- cor.test(data$alcohol, x)
return(c(unname(cor_f$estimate), cor_f$p.value))
}

cor_table <- apply(data_cor, MARGIN = 2, FUN = corr)
cor_table <- t(cor_table)
colnames(cor_table) <- c('corr', 'p-value')

cor_table %>% kbl(caption = "Correlation table") %>% kable_material(c("striped", "hover")) %>% row_spec(0, bold = T, color = "white", background = "#79ad9f") %>% scroll_box(width = "100%", height = "400px")
Correlation table
corr p-value
savings -0.0623 0.5710
males 0.0738 0.5018
urban 0.6600 0.0000
gini 0.1215 0.2679
crimes 0.3701 0.0005
migration 0.2879 0.0076
unemp -0.5292 0.0000
july_temp -0.7096 0.0000
y_rainfall 0.2459 0.0233
sun -0.6162 0.0000
population -0.0003 0.9980
beer 0.6876 0.0000
jan_temp -0.1925 0.0776
vrp 0.3751 0.0004
bar 0.3112 0.0037
income 0.5246 0.0000
poverty -0.4697 0.0000
social -0.1987 0.0683
hdi 0.3487 0.0011
alcoholic 0.4197 0.0001
educ -0.0137 0.9006

Выводы, ожидаемые результаты

Рассмотренные нами переменные будут включены в ММЛР с учетом предполагаемых кросс-эффектов и нелинейных эффектов. Мы ожидаем, что предельный эффект подушевого потребления алкоголя в регионе на подушевое количество преступлений будет значимым и положительным. При прочих равных в регионе с большим подушевым потреблением алкоголя будет фиксироваться больше преступлений.