2017-01-25 61 views
0

我想將我的xml數據轉換爲數據框以便將其導出爲csv。 XML數據如下。當我使用代碼最終結果< - xmlToDataFrame(結果)時,所有數據都放入元素列下的一個單元格中。有誰知道我可以如何解析這些數據?我真正需要的是duration_in_traffic下的20495號碼。謝謝!將xml數據提取到數據框並解析出元素

> xmlChildren(results$row[[1L]]) 
$status 
<status>OK</status> 

$duration 
<duration> 
    <value>20231</value> 
    <text>5 hours 37 mins</text> 
</duration> 

$distance 
<distance> 
    <value>459266</value> 
    <text>459 km</text> 
</distance> 

$duration_in_traffic 
<duration_in_traffic> 
    <value>20495</value> 
    <text>5 hours 42 mins</text> 
</duration_in_traffic> 

attr(,"class") 
[1] "XMLInternalNodeList" "XMLNodeList" 
+0

您是否從Google獲取數據? – SymbolixAU

+0

我們需要原始的XML數據來協助。 – hrbrmstr

+1

[這看起來像](http://stackoverflow.com/q/16863018/5977215)一個非常類似的問題 – SymbolixAU

回答

0

如果你只是想在duration_in_traffic節點(如果是隻有一個級別),然後使用該節點設置爲輸入xmlToDataFrame

xmlToDataFrame(doc["//duration_in_traffic"]) 

您可能能夠使用來獲取所有行值此

rows <- lapply(doc['//row'], function(x) data.frame(xmlToList(x)))  
do.call("rbind", rows)