Convert lists in tibble to one tibble

Hi,
I have a set of lists inside a tibble (same length) and I want to extract them into one single dataframe.
I enclose a minimal reprex to show exactly my needs, but Im looking for a prettier way (specially to have the same variable names in the new dataframe)
Thank you for your help in advance,
M

library(tidyverse)

df <- tibble::tribble(
  ~price,                                                                                                                                                                                                                                                                                                                                                                       ~size,
  c(" 56.9 M Ft ", " 53.24 M Ft ", " 67.62 M Ft ", " 52.48 M Ft ", " 63.89 M Ft ", " 75.63 M Ft ", " 65.51 M Ft ", " 59.9 M Ft ", " 79.9 M Ft ", " 54.9 M Ft ", " 66.1 M Ft ", " 48 M Ft ", " 28.5 M Ft ", " 76.48 M Ft ", " 44.9 M Ft ", " 43.69 M Ft ", " 66.12 M Ft ", " 60.7 M Ft ", " 58.5 M Ft ", " 60.85 M Ft "),   c(" 63 m2", " 57 m2", " 78 m2", " 43 m2", " 63 m2", " 49 m2", " 69 m2", " 66 m2", " 84 m2", " 71 m2", " 76 m2", " 50 m2", " 30 m2", " 73 m2", " 69 m2", " 39 m2", " 78 m2", " 67 m2", " 62 m2", " 64 m2"),
  c(" 60.31 M Ft ", " 43.73 M Ft ", " 46.33 M Ft ", " 68.36 M Ft ", " 83.53 M Ft ", " 94.4 M Ft ", " 42.42 M Ft ", " 79.95 M Ft ", " 100.51 M Ft ", " 59 M Ft ", " 42.74 M Ft ", " 54.9 M Ft ", " 51.9 M Ft ", " 69.2 M Ft ", " 44.48 M Ft ", " 41.52 M Ft ", " 43.3 M Ft ", " 28.9 M Ft ", " 47.23 M Ft ", " 41.31 M Ft "),   c(" 44 m2", " 40 m2", " 47 m2", " 68 m2", " 89 m2", " 87 m2", " 45 m2", " 93 m2", " 80 m2", " 87 m2", " 47 m2", " 67 m2", " 71 m2", " 75 m2", " 44 m2", " 32 m2", " 39 m2", " 33 m2", " 49 m2", " 48 m2"),
  c(" 41.69 M Ft ", " 59.39 M Ft ", " 35 M Ft ", " 82.29 M Ft ", " 112.47 M Ft ", " 51.77 M Ft ", " 33.9 M Ft ", " 89.7 M Ft ", " 38 M Ft ", " 61.67 M Ft ", " 42.85 M Ft ", " 43.81 M Ft ", " 46.37 M Ft ", " 49.38 M Ft ", " 47.12 M Ft ", " 128.79 M Ft ", " 109.82 M Ft ", " 83.4 M Ft ", " 114.71 M Ft ", " 33.87 M Ft "), c(" 45 m2", " 60 m2", " 31 m2", " 77 m2", " 82 m2", " 59 m2", " 60 m2", " 64 m2", " 47 m2", " 79 m2", " 45 m2", " 39 m2", " 40 m2", " 44 m2", " 44 m2", " 107 m2", " 81 m2", " 78 m2", " 119 m2", " 34 m2")
)

df
#> # A tibble: 3 x 2
#>   price      size      
#>   <list>     <list>    
#> 1 <chr [20]> <chr [20]>
#> 2 <chr [20]> <chr [20]>
#> 3 <chr [20]> <chr [20]>

df %>% 
  mutate(
    df = pmap(.l = list(price, size), as.data.frame)
  ) %>% 
  pull(df) %>% 
  reduce(rbind)
#>         .l[[1L]][[i]]
#>  63 m2     56.9 M Ft 
#>  57 m2    53.24 M Ft 
#>  78 m2    67.62 M Ft 
#>  43 m2    52.48 M Ft 
#>  63 m21   63.89 M Ft 
#>  49 m2    75.63 M Ft 
#>  69 m2    65.51 M Ft 
#>  66 m2     59.9 M Ft 
#>  84 m2     79.9 M Ft 
#>  71 m2     54.9 M Ft 
#>  76 m2     66.1 M Ft 
#>  50 m2       48 M Ft 
#>  30 m2     28.5 M Ft 
#>  73 m2    76.48 M Ft 
#>  69 m21    44.9 M Ft 
#>  39 m2    43.69 M Ft 
#>  78 m21   66.12 M Ft 
#>  67 m2     60.7 M Ft 
#>  62 m2     58.5 M Ft 
#>  64 m2    60.85 M Ft 
#>  44 m2    60.31 M Ft 
#>  40 m2    43.73 M Ft 
#>  47 m2    46.33 M Ft 
#>  68 m2    68.36 M Ft 
#>  89 m2    83.53 M Ft 
#>  87 m2     94.4 M Ft 
#>  45 m2    42.42 M Ft 
#>  93 m2    79.95 M Ft 
#>  80 m2   100.51 M Ft 
#>  87 m21      59 M Ft 
#>  47 m21   42.74 M Ft 
#>  67 m21    54.9 M Ft 
#>  71 m21    51.9 M Ft 
#>  75 m2     69.2 M Ft 
#>  44 m21   44.48 M Ft 
#>  32 m2    41.52 M Ft 
#>  39 m21    43.3 M Ft 
#>  33 m2     28.9 M Ft 
#>  49 m21   47.23 M Ft 
#>  48 m2    41.31 M Ft 
#>  45 m21   41.69 M Ft 
#>  60 m2    59.39 M Ft 
#>  31 m2       35 M Ft 
#>  77 m2    82.29 M Ft 
#>  82 m2   112.47 M Ft 
#>  59 m2    51.77 M Ft 
#>  60 m21    33.9 M Ft 
#>  64 m21    89.7 M Ft 
#>  47 m22      38 M Ft 
#>  79 m2    61.67 M Ft 
#>  45 m22   42.85 M Ft 
#>  39 m22   43.81 M Ft 
#>  40 m21   46.37 M Ft 
#>  44 m22   49.38 M Ft 
#>  44 m23   47.12 M Ft 
#>  107 m2  128.79 M Ft 
#>  81 m2   109.82 M Ft 
#>  78 m22    83.4 M Ft 
#>  119 m2  114.71 M Ft 
#>  34 m2    33.87 M Ft

Created on 2021-04-21 by the reprex package (v0.3.0)

I found.. It is the unnest()

This topic was automatically closed 7 days after the last reply. New replies are no longer allowed.

If you have a query related to it or one of the replies, start a new topic and refer back with a link.