簡體   English   中英

如何將帶有屬性的 XML 轉換為 R 中的數據框?

[英]How to convert an XML with attributes into a data frame in R?

我有一個 XML 文件,如下所示:

<?xml version="1.0" encoding="utf-8"?>
<text>
<book id="1">
<sentence id="1">lorem ipsum</sentence>
<sentence id="2">lorem ipsum</sentence>
<sentence id="3">lorem ipsum</sentence>
</book>

<book id="2">
<sentence id="1">lorem ipsum</sentence>
<sentence id="2">lorem ipsum</sentence>
<sentence id="3">lorem ipsum</sentence>
</book>
</text>

如何將此 XML 文件轉換為 R 中的數據框,如下所示:

book sentence-num sentence
1         1       lorem ipsum
1         2       lorem ipsum   
1         3       lorem ipsum
2         1       lorem ipsum
2         2       lorem ipsum   
2         3       lorem ipsum
library(xml2)

book  <- xml_find_all( myxml, "//book") %>% xml_attr("id")
sentence_num <- xml_find_all( myxml, "//sentence") %>% xml_attr("id")
sentence <- xml_find_all( myxml, "//sentence") %>% xml_text()

out <- data.frame(book,sentence_num,sentence) 

out <- out[order(out$book,out$sentence_num),]

#    book sentence_num    sentence
#        1            1 lorem ipsum
#        1            2 lorem ipsum
#        1            3 lorem ipsum
#        2            1 lorem ipsum
#        2            2 lorem ipsum
#        2            3 lorem ipsum

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM