У меня есть следующая информация в виде вложенного XML-файла, который я пытаюсь преобразовать в data.frame для анализа и составления отчетов:
<node TEXT="Cost">
<node TEXT="Scale">
<node TEXT="1 - $0 to $100">
</node>
<node TEXT="2 - $100 to $500">
</node>
<node TEXT="3 - $500 to $1000">
</node>
<node TEXT="4 - $1000 to $5000">
</node>
<node TEXT="6 - $5000 +">
</node>
</node>
<node TEXT="Weight">
<node TEXT="1">
</node>
</node>
</node>
Я могу читать в файле XML и извлекать небольшие порции, как показано ниже:
file <- '<node TEXT="Cost">
<node TEXT="Scale">
<node TEXT="1 - $0 to $100">
</node>
<node TEXT="2 - $100 to $500">
</node>
<node TEXT="3 - $500 to $1000">
</node>
<node TEXT="4 - $1000 to $5000">
</node>
<node TEXT="6 - $5000 +">
</node>
</node>
<node TEXT="Weight">
<node TEXT="1">
</node>
</node>
</node>
'
data <- read_xml(file)
xml_find_all(data,"//node/node[@TEXT = 'Scale']/node/@TEXT")
Но мне действительно нужно получить его в виде data.frame, как показано ниже:
Node1 Node2 Node3
"Cost" "Scale" "1 - $0 to $100"
"Cost" "Scale" "2 - $100 to $500"
"Cost" "Scale" "3 - $500 to $1000"
"Cost" "Scale" "4 - $1000 to $5000"
"Cost" "Scale" "5 - $5000 +"
"Cost" "Weight" "1"
Может ли кто-нибудь указать мне правильное направление?