#r #statistics
#r #Статистика
Вопрос:
Я пытаюсь рассчитать размер эффекта среди разных уровней факторов. Для сравнения двух средних в пределах каждого уровня фактора приведенный ниже код работает нормально:
cohens_d_list <- by(mydata, mydata$factor, function(sub)
cohens_d(sub$score1, sub$score2)
)
cohens_d_list
Однако я не мог понять, как сравнить каждый уровень фактора для одного среднего значения (например, для score1 я хочу сравнить каждый уровень фактора друг с другом: уровень фактора 1 против уровня фактора 2, уровень фактора 1 против уровня фактора 3, уровень фактора 1. против уровня фактора 4 ….) друг с другом. Я использовал пакеты psych, effectsize и effsize, но, похоже, они не учитывают более 2 уровней в одной факторной переменной. Есть предложения по коду или пакету?
Ответ №1:
После перепробования десятков пакетов пакет esvis сделал свое дело.
df%>%
ungroup(Group)%>% # Include this line if you get grouping error
coh_d(score1~ Group)
Вы получаете красивую таблицу со всеми возможными сравнениями.
Ответ №2:
Вы можете подобрать модель и использовать eff_size()
функцию из emmeans
(преимущество которой будет заключаться в использовании объединенных SD-карт из всех групп, а не только из двух сравниваемых):
m <- lm(mpg ~ factor(cyl), data = mtcars)
library(emmeans)
(em <- emmeans(m, ~ cyl))
#> cyl emmean SE df lower.CL upper.CL
#> 4 26.7 0.972 29 24.7 28.7
#> 6 19.7 1.218 29 17.3 22.2
#> 8 15.1 0.861 29 13.3 16.9
#>
#> Confidence level used: 0.95
eff_size(em, sigma = sigma(m), edf = df.residual(m))
#> contrast effect.size SE df lower.CL upper.CL
#> 4 - 6 2.15 0.56 29 1.003 3.29
#> 4 - 8 3.59 0.62 29 2.320 4.86
#> 6 - 8 1.44 0.50 29 0.418 2.46
#>
#> sigma used for effect sizes: 3.223
#> Confidence level used: 0.95
Создано 2021-06-07 пакетом reprex (версия 0.0)
Комментарии:
1. Почему выгодно использовать объединенные SD-карты из всех групп?
2. @ учащиеся, одна из причин заключается в том, что если мы предположим, что все группы независимых переменных взяты из одного и того же распределения (нулевая гипотеза), то у них будет общая дисперсия. Как и средние различия, отклонения зависят от вариативности выборки. Объединение в пул учитывает различия в дисперсии, что полезно, если а) вы проводите метаанализ, в котором разные исследования имели разные отклонения, или б) при проверке нулевой гипотезы, где ваши выводы скорректированы с неравными отклонениями. В последнем случае симметрия между выводами и оценками размера эффекта приятна 🙂 Я уверен, что есть и другие причины!