Спасибо за предложение предложения по вопросу processing of hospital admission data using R, у меня есть вопрос по этому вопросу, на самом деле это должно быть задачей перед этим вопросом.обработка данных госпитализации с использованием R (часть II)
Теперь у меня есть набор данных, как это:
Patient_ID Date Ward
P001 1 A
P001 2 A
P001 3 A
P001 4 A
P001 4 B
P001 5 B
P001 6 B
P001 7 B
P001 7 C
P001 8 B
P001 9 B
P001 10 B
Мне нужно, чтобы преобразовать его в:
Patient_ID Date Ward
P001 1 A
P001 2 A
P001 3 A
P001 4 A;B
P001 5 B
P001 6 B
P001 7 B;C
P001 8 B
P001 9 B
P001 10 B
В настоящее время я преобразовать его с помощью ddply
, код прилагается ниже:
data <- ddply(data,
c("Patient_ID", "Date"),
function(df)
{data.frame(Ward=paste(unique(df[,"Ward"]),collapse=";"))
},
.progress="text"
)
Это может решить мою проблему, но это ОЧЕНЬ медленно (более 20 минут на P4 3.2 mac hine), когда набор данных имеет 8818 unique(Patients_ID)
и 1861 unique(Date)
. Как я могу улучшить это? Благодаря!