Превратите список векторов разной длины в `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 если возможно.

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= " "))
Другие вопросы по тегам