小编why*_*not的帖子

将数据与 R xml2 中的单个 XML 节点集隔离

我正在尝试迭代地隔离和操作 XML 文档中的节点集,但我在 R 的 xml2 包中的 xml_find_all() 函数中遇到了奇怪的行为。有人可以帮助我了解应用于节点集的函数的范围吗?

这是一个例子:

library( xml2 )
library( dplyr )

doc <- read_xml( "<MEMBERS>
                     <CUSTOMER>
                        <ID>178</ID>
                        <FIRST.NAME>Alvaro</FIRST.NAME>
                        <LAST.NAME>Juarez</LAST.NAME>
                        <ADDRESS>123 Park Ave</ADDRESS>
                        <ZIP>57701</ZIP>
                     </CUSTOMER>
                     <CUSTOMER>
                        <ID>934</ID>
                        <FIRST.NAME>Janette</FIRST.NAME>
                        <LAST.NAME>Johnson</LAST.NAME>
                        <ADDRESS>456 Candy Ln</ADDRESS>
                        <ZIP>57701</ZIP>
                     </CUSTOMER>  
                  </MEMBERS>"  )

doc %>% xml_find_all( '//*') %>% xml_path()
# [1] "/MEMBERS"                        "/MEMBERS/CUSTOMER[1]"           
# [3] "/MEMBERS/CUSTOMER[1]/ID"         "/MEMBERS/CUSTOMER[1]/FIRST.NAME"
# [5] "/MEMBERS/CUSTOMER[1]/LAST.NAME"  "/MEMBERS/CUSTOMER[1]/ADDRESS"   
# [7] "/MEMBERS/CUSTOMER[1]/ZIP"        "/MEMBERS/CUSTOMER[2]"           
# [9] "/MEMBERS/CUSTOMER[2]/ID"         "/MEMBERS/CUSTOMER[2]/FIRST.NAME"
#[11] "/MEMBERS/CUSTOMER[2]/LAST.NAME"  "/MEMBERS/CUSTOMER[2]/ADDRESS"   
#[13] "/MEMBERS/CUSTOMER[2]/ZIP"
Run Code Online (Sandbox Code Playgroud)

对象 customer.01 是仅包含来自该客户的数据的节点集。

kids <- xml_children( doc )

customer.01 …
Run Code Online (Sandbox Code Playgroud)

xml r xml2

3
推荐指数
1
解决办法
3602
查看次数

标签 统计

r ×1

xml ×1

xml2 ×1