In R habe ich einen data.frame (oder data.table). Innerhalb dieses data.frames habe ich eine Spalte, in der jede Zelle aus einer Liste von Listen besteht (ein data.frame).Packen Sie eine R-Datenrahmenspalte von Listen aus
Ich kann diese Spalte in eine einzige data.frame von rbindlist(data$Subdocuments)
konvertieren, aber hier sind die anderen Spalten der ursprünglichen data.frame fehlt.
Wie effizient entpacken Sie diese Spalte von Listen, aber behalten Sie die anderen Spalten an den neuen data.frame?
library(data.table)
data <- structure(list(ID = c("1", "2", "3"), Country = c("Netherlands",
"Germany", "Belgium"), Subdocuments = list(structure(list(Value = c("5",
"5", "1", "3", "2", "1", "1", "1", "2", "5", "3", "2", "4", "5",
"5", "2"), Label = c("Test1", "Test2", "Test3", "Test4", "Test5",
"Test6", "Test7", "Test8", "Test9", "Test10", "Test11", "Test12",
"Test13", "Test14", "Test15", "Test16"), Year = c(2001, 2002,
2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011, 2012, 2013,
2014, 2015, 2016)), .Names = c("Value", "Label", "Year"), class = "data.frame", row.names = c(NA,
16L)), structure(list(Value = c("5", "4", "3", "2", "2", "2",
"1", "1", "5", "4", "4", "4", "5", "1", "1", "3"), Label = c("Test1",
"Test2", "Test3", "Test4", "Test5", "Test6", "Test7", "Test8",
"Test9", "Test10", "Test11", "Test12", "Test13", "Test14", "Test15",
"Test16"), Year = c(2001, 2002, 2003, 2004, 2005, 2006, 2007,
2008, 2009, 2010, 2011, 2012, 2013, 2014, 2015, 2016)), .Names = c("Value",
"Label", "Year"), class = "data.frame", row.names = c(NA, 16L
)), structure(list(Value = c("1", "2", "3", "1", "1", "4", "5",
"1", "2", "3", "2", "2", "1", "1", "1", "5"), Label = c("Test1",
"Test2", "Test3", "Test4", "Test5", "Test6", "Test7", "Test8",
"Test9", "Test10", "Test11", "Test12", "Test13", "Test14", "Test15",
"Test16"), Year = c(2001, 2002, 2003, 2004, 2005, 2006, 2007,
2008, 2009, 2010, 2011, 2012, 2013, 2014, 2015, 2016)), .Names = c("Value",
"Label", "Year"), class = "data.table", row.names = c(NA, 16L
)))), .Names = c("ID", "Country", "Subdocuments"), row.names = c(NA,
-3L), class = "data.frame")
Ihre Daten zeigten eine Menge 'NA'-Zeilen in der Spalte' list'. – akrun
@akrun Entschuldigung, da war etwas falsch im dput des data.frame. Ich habe es gelöst. – Berecht
vielleicht 'setDT (Daten) [, .SD [[1L]] [[1L]], von =. (ID, Land)]'? – Arun