Liste l
hat drei Strings, die einen, zwei bzw. drei Namen haben. Ich möchte l
in einen Datenrahmen konvertieren, und ich brauche eine zusätzliche Spalte mit den Namen in n
.Liste in Datenrahmen in R konvertieren und Spalte mit Namen von Unterlisten hinzufügen
l <- list(c("a", "b"), c("c", "d", "e"), c("e"))
n <- c("one", "two", "three")
Ich kann es mit einer Schleife, aber ich bin mir sicher, es gibt effizientere Möglichkeiten, dies zu tun.
out <- NULL
for (i in 1:length(n)){
step <- rep(n[i], length(l[[i]]))
out <- c(out, step)}
df <- as.data.frame(unlist(l))
df$n <- out
df
# unlist(l) n
#1 a one
#2 b one
#3 c two
#4 d two
#5 e two
#6 e three