Istnieje lista, którą chciałbym wypisać do pliku Excela jako pojedynczy ciąg. Zacznę od listy znaków.Jak zwinąć listę znaków w jeden ciąg w R
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
wyjściowa jest taka:
[1] "Journal Article" "Multicenter Study" "Research Support, N.I.H., Extramural"
[4] "Research Support, Non-U.S. Gov't"
Więc typów - tam znajduje się lista znaków teraz muszę zrobić w jeden ciąg. To, co mam tak daleko, ale to nie jest optymalna:
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"
Więc chcę skończyć z ładnym ciąg oddzielonych rur lub innym separatorem. (ostatnia część kodu - jest to, co chcę ładnie przepisać). Rury są ważne i muszą być właściwie wykonane.
Mówisz o listach znaków (masz nawet podzbiorów poprzez '[['). Jeśli 'd' jest listą znaków, możesz również' do.call ("wklej", c (d, sep = "|")) '. –