Превратите список векторов разной длины в `tibble`

В настоящее время у меня есть список векторов символов разной длины. Как это:

list(
  c('this','is','first'),
  c('this','is','second','it','longer'),
  c('this is a list','that is length 2')
)

Я хотел бы объединить все элементы каждого вектора в списке в одну строку в tibble. Как это:

data_frame(column_1 =
             c('this is first',
               'this is second it longer',
               'this is a list that is length 2'))

Я хотел бы использовать базу R или пакеты из tidyverse, если это возможно.


person elliot    schedule 22.02.2018    source источник


Ответы (1)


Вы можете использовать purrr и stringr

x <- list(
  c('this','is','first'),
  c('this','is','second','it','longer'),
  c('this is a list','that is length 2')
)

tibble(column1= map_chr(x, str_flatten, " "))

Обратите внимание, что str_flatten является новым для stringr_1.3.0

Это также можно легко сделать с базой R (без функций tidyverse)

data.frame(column1 = sapply(x, paste, collapse= " "))
person MrFlick    schedule 22.02.2018