Wie konvertiere ich einen Teil einer XML-Datei in einen Datenrahmen? (richtig)
Ich versuche, Informationen aus einer XML-Datei von ClinicalTrials.gov zu extrahieren. Die Datei ist folgendermaßen organisiert:
<clinical_study>
...
<brief_title>
...
<location>
<facility>
<name>
<address>
<city>
<state>
<zip>
<country>
</facility>
<status>
<contact>
<last_name>
<phone>
<email>
</contact>
</location>
<location>
...
</location>
...
</clinical_study>
Ich kann das R XML-Paket von CRAN im folgenden Code verwenden, um alle Standortknoten aus der XML-Datei zu extrahieren:
library(XML)
clinicalTrialUrl <- "http://clinicaltrials.gov/ct2/show/NCT01480479?resultsxml=true"
xmlDoc <- xmlParse(clinicalTrialUrl, useInternalNode=TRUE)
locations <- xmlToDataFrame(getNodeSet(xmlDoc,"//location"))
Das funktioniert irgendwie ok.jedochWenn Sie sich den Datenrahmen ansehen, werden Sie feststellen, dass die Funktion xmlToDataFrame alles unter zusammenfasst<facility>
in eine einzelne verkettete Zeichenfolge. Eine Lösung wäre, Code zu schreiben, um den Datenrahmen spaltenweise zu generieren, den Sie beispielsweise generieren könnten