ich einige R-Code haben, die auf alle Dateien in dem aktuellen Verzeichnis eine Datenextraktionsvorgang durchführt, mit dem folgenden Code:Ausgänge von lapply zu einem Datenrahmen Extrahierung
files <- list.files(".", pattern="*.tts")
results <- lapply(files, data_for_time, "17/06/2006 12:00:00")
Die Ausgabe von lapply ist die folgende (extrahiert mit dput()
) - im Grunde eine Liste voller Vektoren:
list(c("amer", "14.5"), c("appl", "14.2"), c("brec", "13.1"),
c("camb", "13.5"), c("camo", "30.1"), c("cari", "13.8"),
c("chio", "21.1"), c("dung", "9.4"), c("east", "11.8"), c("exmo",
"12.1"), c("farb", "14.7"), c("hard", "15.6"), c("herm",
"24.3"), c("hero", "13.3"), c("hert", "11.8"), c("hung",
"26"), c("lizr", "14"), c("maid", "30.4"), c("mart", "8.8"
), c("newb", "14.7"), c("newl", "14.3"), c("oxfr", "13.9"
), c("padt", "10.3"), c("pbil", "13.6"), c("pmtg", "11.1"
), c("pmth", "11.7"), c("pool", "14.6"), c("prae", "11.9"
), c("ral2", "12.2"), c("sano", "15.3"), c("scil", "36.2"
), c("sham", "12.9"), c("stra", "30.9"), c("stro", "14.7"
), c("taut", "13.7"), c("tedd", "22.3"), c("wari", "12.7"
), c("weiw", "13.6"), c("weyb", "8.4"))
Allerdings würde Ich mag, um dann mit diesem Ausgang als Datenrahmen mit zwei Spalten beschäftigen: ein für den alphabetischen Code ("amer"
, "appl"
usw.) und eine für t er Nummer (14.5
, 14.2
usw.).
Leider as.data.frame
scheint nicht mit dieser Eingabe von verschachtelten Vektoren innerhalb einer Liste zu arbeiten. Wie soll ich das umsetzen? Muss ich ändern, wie meine Funktion data_for_time
ihre Werte zurückgibt? Im Moment gibt es einfach c(name, value)
zurück. Oder gibt es eine gute Möglichkeit, von dieser Art von Ausgabe in einen Datenrahmen zu konvertieren?
Wenn Sie verwendet hatten 'sapply' statt' lapply' Sie ein „normales“ Objekt bekommen haben könnten. –