Подтвердить что ты не робот

Как свернуть список символов в одну строку в R

Есть список, который я хотел бы выводить в файл excel в виде отдельной строки. Я начинаю со списка символов.

  url="http://eutils.ncbi.nlm.nih.gov/entrez/eutils/efetch.fcgi?db=pubmed&id=21558518&retmode=xml"
  xml = xmlTreeParse(url,useInternal = T)
  ns <- getNodeSet(xml, '//PublicationTypeList/PublicationType')  
  types <- sapply(ns, function(x) { xmlValue(x) } )  
  types

Вывод:

[1] "Journal Article"                      "Multicenter Study"                    "Research Support, N.I.H., Extramural"
[4] "Research Support, Non-U.S. Gov't"    

Итак, в типах - есть список символов Теперь мне нужно сделать одну строку. Это то, что у меня есть до сих пор, но это не оптимально:

 types_as_string = as.character(types[[1]])
      if (length(types) > 1) for (j in 2:length(types))   types_as_string = paste(types_as_string,"| ",as.character(types[[j]]),sep="")
 types_as_string          
 [1] "Journal Article| Multicenter Study| Research Support, N.I.H., Extramural| Research Support, Non-U.S. Gov't"

Итак, я хочу получить прекрасную строку, разделенную трубами или другим разделителем. (последняя часть кода - это то, что я хочу переписать хорошо). Трубы важны, и они должны быть выполнены надлежащим образом.

4b9b3361

Ответ 1

Вы можете сделать это с помощью функции paste

    > paste(c('A', 'B', 'C'), collapse=', ' )
    [1] "A, B, C"

Ответ 2

Вы можете сделать это с помощью функции str_c

> library('stringr')
> str_c(c('A','B','C'),collapse=',')    
[1] "A,B,C"