Как сравнить t-тест в определенных диапазонах дат? - PullRequest
0 голосов
/ 08 октября 2019

У меня есть стандартная группа для даты, т.е. 4-30-7.2005

, и мои контрольные даты 4-30.7.2003 и 4-30.7.2004

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

Я использую t-критерий для сравнения средних значений по годам, используя следующую команду:

t.test(cvd ~ format(date, "%Y"), data=hw_2010[format(hw_2010$date, "%Y")=="2003" | format(hw_2010$date, "%Y")=="2004",])

это работает нормально.

Но как я могу объединить контрольные годы в одну группу и сравнить их со стандартной группой, используя t-критерий? Может кто-нибудь, пожалуйста, помогите мне с кодом?

Отредактировано: я применяю следующую формулу для сравнения:

t.test(cvd ~ format(date, "%Y")=="2010", data=hw_2010[format(hw_2010$date, "%Y") %in% c("2007","2008","2009", "2010", "2012", "2013"),])

, но получаю следующую ошибку от R:

Error in t.test.formula(cvd ~ format(date, "%Y") == "2010", data = hw_2010[format(hw_2010$date,  : 

коэффициент группировки должен иметь ровно 2уровни

Это исправлено

1 Ответ

0 голосов
/ 08 октября 2019

Во-первых, вы можете упростить до:

t.test(cvd ~ format(date, "%Y"), data=hw_2010[format(hw_2010$date, "%Y") %in% c("2003","2004"),])

Если я правильно понимаю, вы хотите сравнить 2003 и 2004 с 2005?

Если это так, то попробуйте:

t.test(cvd ~ format(date, "%Y")=="2005", data=hw_2010[format(hw_2010$date, "%Y") %in% c("2003","2004","2005"),])

В результатах t-теста mean in group TRUE является вашей контрольной группой.

...