Как я могу привести в порядок результаты функции вставки? (Р) - PullRequest
0 голосов
/ 27 апреля 2020

У меня есть список с такой структурой

ex1.
[[1]]
[1]"blah blah~"

ex2.
[[1]]
[1]"blah blah~~~"
[2]"fmlafmlaf~~"

ex3.
[[1]]
[1]"blaaaa~"

Когда я использую функцию вставки, ex1, ex3 приводят результат в порядок. как показано ниже.

[[1]]
[1]"~~~sth"

Тем не менее, в примере 2 он имеет 2 компонента в одном большом списке, и результат функции вставки выглядит как грязный. Я имею в виду

[[1]]
[1] "c(\ "blah blah~~~" ...

Так внезапно появляется "c (\ .. ~, \ n" и портит мой результат.

Более того, иногда функция вставки не работает и компоненты не смешались.

Что мне делать?

Ответы [ 3 ]

0 голосов
/ 27 апреля 2020

Если цель состоит в том, чтобы вставить все примеры в большую строку, тогда вы можете использовать unlist:

ex1 <- "blah blah~"
ex2 <- c("blah blah~", "blah ~ .... ~~~~")
list_ex <- list(ex1,ex2)

paste0(unlist(list_ex), collapse = " ")
[1] "blah blah~ blah blah~ blah ~ .... ~~~~"
0 голосов
/ 27 апреля 2020

Опция с map

library(stringr)
library(purrr)
map_chr(list_ex, str_c, collapse="")
0 голосов
/ 27 апреля 2020

Не используйте вставку напрямую, поскольку у вас есть список, использующий sapply

sapply(list_ex, paste0, collapse = "")
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...