Допустим, у меня есть фрейм данных, состоящий из "года" и "когнитивных нарушений" (1 = да, 0 = в противном случае)
Я хочу сравнить пропорции каждый год. Таким образом, 2000 будет:
df %>%
filter(year == 2000) %>%
{prop.test(rev(table(.$cogimp)),p = 0.5, conf.level=0.95)}
И я могу проверить по:
prop.test(x = 3, n = 30, p = 0.5, conf.level=0.95)
Однако мне кажется, что я могу упростить эти анализы, используя метлу или мурлыканье. Моя цель - создать такую таблицу:
Код указан ниже:
df <- structure(list(year = c(2000, 2000, 2015, 2015, 2000, 2015, 2000,
2000, 2000, 2000, 2015, 2006, 2015, 2015, 2010, 2006, 2006, 2010,
2000, 2006, 2015, 2006, 2015, 2015, 2000, 2015, 2000, 2015, 2015,
2010, 2015, 2015, 2015, 2000, 2006, 2006, 2006, 2015, 2015, 2006,
2015, 2010, 2000, 2000, 2010, 2006, 2010, 2010, 2015, 2000, 2015,
2006, 2000, 2006, 2015, 2006, 2000, 2010, 2010, 2010, 2015, 2006,
2015, 2000, 2015, 2010, 2010, 2010, 2010, 2000, 2000, 2000, 2006,
2015, 2015, 2000, 2000, 2000, 2015, 2006, 2006, 2010, 2006, 2000,
2010, 2000, 2015, 2015, 2015, 2015, 2010, 2000, 2000, 2010, 2006,
2010, 2010, 2000, 2000, 2000), cogimp = c(0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 1, 0, 0, 1, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 1, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 0, 0, 0, 1, 0, 0, 0, 1, 1, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 0, 0, 1,
1, 1, 0, 0, 0, 0, 0, 0, 0)), row.names = c(NA, -100L), class = c("tbl_df",
"tbl", "data.frame"))
df %>%
count(year, cogimp)
df %>%
filter(year == 2006) %>%
{prop.test(rev(table(.$cogimp)),p = 0.5, conf.level=0.95)}
prop.test(x = 3, n = 30, p = 0.5, conf.level=0.95)
prop.test(x = 2, n = 19, p = 0.5, conf.level=0.95)