Я рассмотрел много похожих вопросов (например, this one), но в моем случае группы лечения не сохраняются как отдельные векторы, и у меня не было никакого успеха, подставляя имена переменных в какие-либо другой код, который я видел в этой топи c.
Я хочу сравнить средства для «до» и «после» обработок для одной и той же переменной (результат теста) в нескольких местах.
Мои данные выглядят так:
> head(my.df, n=15)
Location TestScore Treatment
1 4 0.7167641 Before
2 4 0.7998261 Before
3 4 0.8165880 After
4 4 0.8078955 After
5 7 0.6993413 Before
6 7 0.8404255 Before
7 7 0.7803164 Before
8 7 0.8383867 After
9 7 0.7930419 After
10 8 0.8504963 Before
11 8 0.7734653 Before
12 8 0.8408432 After
13 8 0.7980454 After
14 8 0.8407756 After
15 8 0.7837427 After
Обратите внимание, что количество ответов «до» и «после» различается как внутри, так и между местоположениями.
Я знаю, что могу использовать следующий код для сравнения процедур до и после во ВСЕХ местах:
t.test(TestScore ~ Treatment, data = my.df, var.equal = FALSE)
Однако я хочу сравнить значения до и после для КАЖДОГО местоположения (так как У меня более 100 локаций), а не ВСЕ локации одновременно. В идеале я мог бы создать список или таблицу p-значений без необходимости каждый раз писать новую строку кода. Я думал, что мог бы сделать что-то простое, например, добавить «group_by», как я показал ниже:
my.df %>% group_by(Location) %>% do(tidy(t.test(TestScore ~ Treatment, data = my.df, var.equal = FALSE)
, но когда я запускаю этот код, я получаю вывод с одинаковым p-значением для каждого местоположения (даже если данные разные), как показано ниже:
# A tibble: 10 x 11
# Groups: Location [10]
Location estimate estimate1 estimate2 statistic p.value parameter conf.low conf.high method alternative
<fct> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl> <chr> <chr>
1 4 0.0587 0.972 0.913 15.0 1.60e-20 51.8 0.0508 0.0665 Welch Two Sample t-test two.sided
2 7 0.0587 0.972 0.913 15.0 1.60e-20 51.8 0.0508 0.0665 Welch Two Sample t-test two.sided
3 8 0.0587 0.972 0.913 15.0 1.60e-20 51.8 0.0508 0.0665 Welch Two Sample t-test two.sided
4 9 0.0587 0.972 0.913 15.0 1.60e-20 51.8 0.0508 0.0665 Welch Two Sample t-test two.sided
5 10 0.0587 0.972 0.913 15.0 1.60e-20 51.8 0.0508 0.0665 Welch Two Sample t-test two.sided
6 12 0.0587 0.972 0.913 15.0 1.60e-20 51.8 0.0508 0.0665 Welch Two Sample t-test two.sided
7 14 0.0587 0.972 0.913 15.0 1.60e-20 51.8 0.0508 0.0665 Welch Two Sample t-test two.sided
8 16 0.0587 0.972 0.913 15.0 1.60e-20 51.8 0.0508 0.0665 Welch Two Sample t-test two.sided
9 21 0.0587 0.972 0.913 15.0 1.60e-20 51.8 0.0508 0.0665 Welch Two Sample t-test two.sided
10 27 0.0587 0.972 0.913 15.0 1.60e-20 51.8 0.0508 0.0665 Welch Two Sample t-test two.sided
Как получить отдельные значения р, сравнивающие обработку до и после для каждого местоположения? Любая помощь с благодарностью!