gpt4 book ai didi

R 编程 XML : extract specific node

转载 作者:行者123 更新时间:2023-12-04 18:47:38 26 4
gpt4 key购买 nike

我想知道如何使用 R 的 XML 包到达特定节点。这是一个使用 R 内置数据集 mtcars 的示例。

fileName <- system.file("exampleData", "mtcars.xml", package="XML") 
doc <- xmlTreeParse(fileName)
doc$doc$children$dataset

运行上面的代码给了我ff。结果:
....
<record id="Fiat 128">32.4 4 78.7 66 4.08 2.200 19.47 1 1 4 1</record>
<record id="Honda Civic">30.4 4 75.7 52 4.93 1.615 18.52 1 1 4 2</record>
<record id="Toyota Corolla">33.9 4 71.1 65 4.22 1.835 19.90 1 1 4 1</record>
<record id="Toyota Corona">21.5 4 120.1 97 3.70 2.465 20.01 1 0 3 1</record>
<record id="Dodge Challenger">15.5 8 318.0 150 2.76 3.520 16.87 0 0 3 2</record>
<record id="AMC Javelin">15.2 8 304.0 150 3.15 3.435 17.30 0 0 3 2</record>
<record id="Camaro Z28">13.3 8 350.0 245 3.73 3.840 15.41 0 0 3 4</record>
<record id="Pontiac Firebird">19.2 8 400.0 175 3.08 3.845 17.05 0 0 3
....

我想知道如何选择特定节点并使用 xmlAttrs 获取它们的值。例如,我将如何选择节点: <record id="Fiat 128">或节点 <record id="Honda Civic">

最佳答案

doc <- xmlTreeParse(fileName)
doc <- xmlParse(fileName)
xpathSApply(doc,"//*/record[@id=\"Fiat 128\"]",xmlValue)
xpathSApply(doc,"//*/record[@id=\"Honda Civic\"]",xmlValue)

使用 xmlParse相当于 xmlTreeParse(useInternalNodes=T)为了
关于 xpath 的信息见 https://www.w3schools.com/xml/xpath_syntax.asp

关于R 编程 XML : extract specific node,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11712285/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com