переполнения,
У меня есть проблема для подсчета пациентов:
- выполнение определенных критериев, но в другой момент времени. Для проблемы, которую я пытаюсь решить, разные моменты времени - это даты, но округленные до последнего дня месяца. Как видите, у меня есть пациенты до 2011 года, у которых даты датируются в 2008, 2009 и 2010 годах. Затем они будут засчитаны до 2011-01-31 даты. С другими датами, начиная с 2011 года в приходах, они будут засчитаны в округленную дату (последний день месяца).
Критерии для подсчета пациента:
- пациент был выписан и ему был поставлен диагноз.
Вот пример:
У меня есть идентификатор
ID = c(101, 102,103, 104, 105, 106, 107, 108, 109,110, 111, 112, 113, 114)
У меня есть даты регистрации
Reg.date = as.POSIXct(c("2008-01-14", "2008-03-19", "2009-06-13",
"2010-08-17", "2011-09-11", "2012-08-14",
"2013-09-21", "2013-08-09", "2014-02-15",
"2014-07-22", "2015-03-13", "2015-05-30" ,
"2017-01-26", "2017-01-01"))
Я вычел дату -Deduct.date- со значениями NA, это означает, что пациенты все еще живы. Там, где есть даты, это означает, что пациенты выписаны. То же самое с диагнозом - NA означает, что пациент не был диагностирован.
Deduct.date = as.POSIXct(c("2008-09-16 ", "2010-01-13", "2010-02-12",
"2011-02-12", NA, "2012-02-12",
"2012-02-12", NA, NA,
NA, "2014-04-12", NA,
NA, "2017-02-11" ))
Diagnosis = as.POSIXct(c("2008-05-11" , "2009-03-13", "2009-01-03",
NA, NA, NA,
"2011-04-05", NA, NA,
"2013-03-05", NA, NA,
NA))
df = data.frame (ID, Reg.date, Deduct.date)
Я хочу сделать это с помощью tidyverse и lubridate. И результат может быть представлен в кадре данных с подсчетом округленных дат, со ссылкой на те, которые указаны выше.