List `l` has three strings that are named one, two, and three, respectively. I want to convert `l` to a dataframe, and I need an additional column with the names in `n`. 

```
l <- list(c("a", "b"), c("c", "d", "e"), c("e"))
n <- c("one", "two", "three")

```

I can do it using a loop, but I'm sure there are more efficient ways of doing this.

```
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

```