2010-11-18 112 views

回答

5

關於

是否有R中 通用/自動方法來解析XML文件與它的節點和 屬性,自動生成 MySQL表,用於存儲 信息,然後填充這些 表。

答案是一個很好的舊是可以,至少在R

XML包R可以讀取XML文檔,並使用xmlToDataFrame()功能在一個單一的通話返回[R data.frame類型

而且RMySQL包可以在單個命令使用在公共DBI後端對R所定義,並通過提供MySQL的dbWriteTable()功能data.frame對象傳送給數據庫---包括表創建如果需要的話--- RMySQL

簡而言之:兩行可以做到這一點,因此您可以輕鬆地爲自己寫一個新的幫助函數,並將其與相當數量的錯誤檢查一起執行。

4

它們是三個獨立的操作:解析,表格創建和數據填充。你可以用python做所有這三件事,但是沒有關於它的「自動」。我不認爲這很容易。

例如,XML是分層的,SQL是關係型的,基於集合的。我認爲爲每一個可能遇到的XML流獲得一個良好的關係模式並不容易。

0

我們在工作中有時會這樣做,但不是在python中。在這種情況下,每個用法都需要編寫一個自定義程序。我們只有一個SAX解析器可用。使用XML解碼器在單個步驟中獲取字典/散列會有很大幫助。

至少,你必須告訴它標籤映射到表和字段,沒有預先存在的lib中可以知道,...

1

還有的XML包讀取XML爲R,和用於將數據從R寫入MySQL的RMySQL包。

兩者之間有很多工作。 XML超越了像MySQL這樣的RDBMS的範圍,因此可以處理任何XML的東西可能會是非常複雜或毫無用處的。

相關問題