data_frames (llamados diversamente tibbles, tbl_df, tbl) de forma nativa apoyan la creación de columnas de la lista utilizando el data_frameconstructor. Para usarlos, cargue una de las muchas bibliotecas con ellos, como tibble, dplyro tidyverse.
> data_frame(abc = letters[1:3], lst = list(1:3, 1:3, 1:3))
abc lst
<chr> <list>
1 a <int [3]>
2 b <int [3]>
3 c <int [3]>
En realidad, están data.framesbajo el capó, pero algo modificados. Casi siempre se pueden utilizar normalmente data.frames. La única excepción que he encontrado es que cuando las personas hacen controles de clase inapropiados, causan problemas:
>
> data.frame(x = 1:3, y = 1:3) %>% class
[1] "data.frame"
> data.frame(x = 1:3, y = 1:3) %>% class == "data.frame"
[1] TRUE
>
> data_frame(x = 1:3, y = 1:3) %>% class
[1] "tbl_df" "tbl" "data.frame"
> data_frame(x = 1:3, y = 1:3) %>% class == "data.frame"
[1] FALSE FALSE TRUE
>
> if(data_frame(x = 1:3, y = 1:3) %>% class == "data.frame") "something"
Warning message:
In if (data_frame(x = 1:3, y = 1:3) %>% class == "data.frame") "something" :
the condition has length > 1 and only the first element will be used
>
> data_frame(x = 1:3, y = 1:3) %>% inherits("data.frame")
[1] TRUE
Recomiendo leer sobre ellos en R 4 Data Science (gratis).