我遇到了问题。我有一个XML文档,我需要到R. 到目前为止,我设法它使用包xml
和plyr
,做一个简单的XML上传到data.frame将xml文档转换为data.frame中的R
dataframe=ldply(xmlToList("file.xml"), data.frame)
但是当一个data.frame我运行这个XML:
<BusinessUnitList>
<BusinessUnit id="000000195">
<User id="897654322" firstName="Rick" lastName="Test" middleName="R" defaultLanguageName="English">
<RoleList>
<Role id="worker"/>
</RoleList>
<OrgList>
<Organization id="1111"/>
</OrgList>
<Address country="Italy"/>
<Employee badgeNumber="575757" Date="2017-01-01" DateNew="2017-01-02" birthDate="1999-01-01">
<Availability val1="5" val2="n" val3="6" HoursPerWeek="33.75" HoursBetweenShifts="10" minHoursPerWeek="00.00"/>
</Employee>
</User>
</BusinessUnit>
<BusinessUnit id="000000111">
<User id="897652222" firstName="TERI" lastName="tst2" middleName="D" defaultLanguageName="English">
<RoleList>
<Role id="worker"/>
</RoleList>
<OrgList>
<Organization id="2222"/>
</OrgList>
<Address country="Portugal"/>
<Employee badgeNumber="575757" Date="2017-02-02" DateNew="2017-02-02" birthDate="1998-01-01">
<Availability val1="5" val2="n" val3="6" HoursPerWeek="33.75" HoursBetweenShifts="10" minHoursPerWeek="00.00"/>
</Employee>
</User>
</BusinessUnit>
</BusinessUnitList>
我收到一个错误:Error in (function (..., row.names = NULL, check.rows = FALSE, check.names = TRUE, : arguments imply differing number of rows: 9, 7.
请提供样本数据和代码。 – PhilC
为了能够为您提供帮助,我们需要了解您对输出格式有何期待(您希望在哪个列中输入哪些信息?) – sinQueso
实际上,XML [*] [1]不太可能存在文件。您应该花一些时间来了解错误(至少一列没有相同数量的条目)。您可能需要像XML文件那样经常进行工作。 SO上有大量的XML处理问答。你似乎完全没有做过研究。 – hrbrmstr