переменная внутри тега XML для столбца в фрейме данных R - PullRequest
0 голосов
/ 24 марта 2019

Попытка преобразовать файл XML в фрейм данных в R. Однако тег (узел) XML имеет одно и то же имя дважды для одного клиента. Я хочу, чтобы каждый узел в отдельном столбце в кадре данных.

<Consumer ConsumerOID="123">
<BillingContact>
        <PhoneInformation Type="Main">
        <PhoneNumber>4758796523</PhoneNumber>
      </PhoneInformation>
      <PhoneInformation Type="Home">
        <PhoneNumber>1234567890</PhoneNumber>
      </PhoneInformation>
</BillingContact>
</Consumer>
<Consumer ConsumerOID="256">
<BillingContact>
        <PhoneInformation Type="Main">
        <PhoneNumber>9856321475</PhoneNumber>
      </PhoneInformation>
</BillingContact>
</Consumer>
library(XML)

doc<-xmlParse("test.xml")
step1 <- xmlToDataFrame(nodes=getNodeSet(doc,"//OCADocument/Consumer/BillingContact/PhoneInformation"))

Приведенный выше код дает мне только номер телефона, указанный в одном столбце в кадре данных. Это затрудняет определение того, какой номер телефона принадлежит какому IP-адресу.

Я хочу вывод в формате данных, как показано ниже

"ConsumerID      Phonenumber1       Phonenumber2"
"  123           4758796523         1234567890"
"  256           9856321475         NA"
...