2015-07-20 129 views
1

我正嘗試從xml文件創建數據框。我想要的數據幀的樣子:使用R代碼進行XML解析

ID TagName Count 
1  bob  12 
2  Sue  52 
3  carl  15 

這是到目前爲止我的代碼:

doc<-xmlTreeParse("data.xml", useInternal = TRUE) 

rootNode<-xmlRoot(doc) 

文件看起來像(我不能使用某種原因箭頭):

<tag> 

    <row Id = "1" TagName= "bob" Count = "12" /> 

    <row Id = "2" TagName= "Sue" Count = "52" /> 

    <row Id = "3" TagName= "carl" Count= "15" /> 

任何幫助將不勝感激。

+1

您是否嘗試過'xmlToList'? http://stackoverflow.com/questions/17198658/how-to-parse-xml-to-r-data-frame –

+0

是的,我做了,但我想我不擅長從列表中拉出項目。所以困難在於我從創建的列表中提取。 –

回答

0

試試這個:

library(XML) 
xml <- '<tag> 
<row Id = "1" TagName= "bob" Count = "12" /> 
<row Id = "2" TagName= "Sue" Count = "52" /> 
<row Id = "3" TagName= "carl" Count= "15" /> 
</tag>' 
as.data.frame(t(xpathSApply(xmlParse(xml), '/tag/*', xmlAttrs))) 
# Id TagName Count 
# 1 1  bob 12 
# 2 2  Sue 52 
# 3 3 carl 15 
+0

當我嘗試這樣我得到:as.vector(x,「字符」)中的錯誤: 無法強制類型'字符'的向量類型'externalptr' –