Карен Аванесян
Апрель 2018, Ростов-на-Дону
Руководствуясь подсказкой ниже, воспроизвидите в программе самостоятельно необходимые алгоритмы library () попробуйте сами Pisa_Russia_2015 <- попробуйте сами gender <- ST004D01T add_learn_science <- Pisa_Russia_2015$ST071Q01NA add_learn_math <- Pisa_Russia_2015$ST071Q02NA
library(ggpubr)
my_data <- mtcars
head(my_data, 6) #дает нам 6 первых рядов базы данных
mpg cyl disp hp drat wt qsec vs am gear carb
Mazda RX4 21.0 6 160 110 3.90 2.620 16.46 0 1 4 4
Mazda RX4 Wag 21.0 6 160 110 3.90 2.875 17.02 0 1 4 4
Datsun 710 22.8 4 108 93 3.85 2.320 18.61 1 1 4 1
Hornet 4 Drive 21.4 6 258 110 3.08 3.215 19.44 1 0 3 1
Hornet Sportabout 18.7 8 360 175 3.15 3.440 17.02 0 0 3 2
Valiant 18.1 6 225 105 2.76 3.460 20.22 1 0 3 1
#summary(df) также всегда полезно
Квантильный плот (QQPlot) является наиболее простым и базовым способом проверки нормальности распределения переменной.
# mpg
#Проверьте самостоятельно вторую переменную!
ggqqplot(my_data$mpg, ylab = "MPG")
# Shapiro-Wilk normality test for mpg
shapiro.test(my_data$mpg) # => p = 0.1229
Shapiro-Wilk normality test
data: my_data$mpg
W = 0.94756, p-value = 0.1229
# Shapiro-Wilk normality test for wt проделать самостоятельно
Тест должен выявить ОТСУТСТВИЕ статистически значимых отличий
res <- cor.test(my_data$wt, my_data$mpg, method = "pearson")
res
Pearson's product-moment correlation
data: my_data$wt and my_data$mpg
t = -9.559, df = 30, p-value = 1.294e-10
alternative hypothesis: true correlation is not equal to 0
95 percent confidence interval:
-0.9338264 -0.7440872
sample estimates:
cor
-0.8676594
res$p.value # Извлечь статистическую значимость
[1] 1.293959e-10
res$estimate # Извлечь коэффициент корреляции
cor
-0.8676594
res2 <- cor.test(my_data$wt, my_data$mpg, method="kendall")
res2
Kendall's rank correlation tau
data: my_data$wt and my_data$mpg
z = -5.7981, p-value = 6.706e-09
alternative hypothesis: true tau is not equal to 0
sample estimates:
tau
-0.7278321
res2 <- cor.test(my_data$wt, my_data$mpg, method="kendall")
res2
Kendall's rank correlation tau
data: my_data$wt and my_data$mpg
z = -5.7981, p-value = 6.706e-09
alternative hypothesis: true tau is not equal to 0
sample estimates:
tau
-0.7278321
Построим корреляцию визуально
ggscatter(my_data, x = "wt", y = "mpg",
add = "reg.line", # Добавить кривую
conf.int = TRUE, #Изобразить доверительный интервал
add.params = list(color = "blue",
fill = "lightgray")
)+
stat_cor(method = "pearson", label.x = 3, label.y = 30) # Добавить коэффициент корреляции и уровень значимости
# One-sample t-test
res <- t.test(Pisa_Russia_2015$add_learn_science, mu = 8)
res # Printing the results
One Sample t-test
data: Pisa_Russia_2015$add_learn_science
t = -23.491, df = 4890, p-value < 2.2e-16
alternative hypothesis: true mean is not equal to 8
95 percent confidence interval:
6.015623 6.321323
sample estimates:
mean of x
6.168473
Тест начинается с проверки гомогенности дисперсий
res.ftest <- var.test(add_learn_science ~ gender, data = Pisa_Russia_2015)
res.ftest
F test to compare two variances
data: add_learn_science by gender
F = 0.70535, num df = 2555, denom df = 2334, p-value < 2.2e-16
alternative hypothesis: true ratio of variances is not equal to 1
95 percent confidence interval:
0.6514761 0.7635718
sample estimates:
ratio of variances
0.7053514
res.ftest$p.value #значит....?
[1] 6.648591e-18
# Compute t-test
res <- t.test(add_learn_science ~ gender, data = Pisa_Russia_2015, var.equal = TRUE)
res
Two Sample t-test
data: add_learn_science by gender
t = -5.3524, df = 4889, p-value = 9.077e-08
alternative hypothesis: true difference in means is not equal to 0
95 percent confidence interval:
-1.1382699 -0.5279678
sample estimates:
mean in group female mean in group male
5.770736 6.603854
p <- ggboxplot(Pisa_Russia_2015, x = "gender", y = "add_learn_science",
col = "gender", palette = "jco")
# Add p-value
p + stat_compare_means(method = "t.test", label.x = 1.5, label.y = 30)