У меня есть следующие данные:
library(reshape2)
d <- data_frame(
Year = c(2014, 2014, 2015, 2015, 2016),
Country = c("UK", "UK", "UK", "not_UK", "not_UK"),
Gender = c("M", "M", "F", "F", "M"),
Number = c("1", "3", "1", "1", "3"))
Я хотел бы изменить данные так, чтобы числовая переменная была дезагрегирована.
Я пытался сделать это, используя функцию melt
как часть reshape2
.
d<- melt(d, id="ID")
Это не дает мне желаемого результата. Я хотел бы, чтобы данные имели 9 строк (по сути, сумму Number) и выглядели так:
d_disagg <- data.frame(
Year = c(2014, 2014, 2014, 2014, 2015, 2015, 2016, 2106, 2016),
Country = c("UK", "UK", "UK", "UK", "UK", "not_uk", "not_uk", "not_uk",
"not_uk"),
Gender = c("M", "M", "M", "M", "F", "F", "M", "M", "M"))
Я думаю, что я на правильном пути, используя reshape2 и melt - я просто не могу понять, как дезагрегировать так, как мне хотелось бы.
Спасибо