Kombinieren von zwei Listen, in einen dataframe in R
Ich habe zwei Listen mit unterschiedlicher Struktur:
listA <- list(c("a","b","c"), c("d","e"))
listB <- list(0.05, 0.5)
listA
[[1]]
[1] "a" "b" "c"
[[2]]
[1] "d" "e"
listB
[[1]]
[1] 0.05
[[2]]
[1] 0.5
Ich habe eine Idee, wie die Verwendung von Schleifen kombinieren Sie die beiden Listen in ein dataframe, das aussieht, wie das unten, aber ich bin mir sicher, dass es eine effizientere Art und Weise, dies zu tun.
data.frame(A = c("a","b","c","d","e"), B = c(rep(0.05,3), rep(0.5,2)))
A B
1 a 0.05
2 b 0.05
3 c 0.05
4 d 0.50
5 e 0.50
InformationsquelleAutor Rami Al-Fahham | 2015-02-20
Schreibe einen Kommentar Antworten abbrechen
Du musst angemeldet sein, um einen Kommentar abzugeben.
Dies ist eine weitere option:
Vielleicht gibt es eine elegantere Art und Weise hält, dass die Klasse
numeric
vonlist2
's-Elemente... Aber das eine funktioniert so gutBEARBEITEN Weg besser ist Matthew Plourde Lösung mit
Map
akamapply(data.frame, A=listA, B=listB, SIMPLIFY = FALSE)
Ich würde lieber dieses:
Hier ist noch eine Möglichkeit:
Wenn auf der Suche nach einem
tidyverse
Lösung, hier ist der Analog-auf die akzeptierte Antwort. Mit derdfr
suffix dermap
- Funktion-Familie ermöglicht eine sehr einfache Lösung, die sollte auch schneller sein alsdo.call("rbind")
.Erstellt am 2019-02-12 durch die reprex Paket (v0.2.1)