R语言怎么读取和处理XML数据

幻夢星雲
发布: 2025-12-15 15:21:07
原创
369人浏览过
R语言处理XML数据推荐使用xml2包,需先install.packages("xml2")安装并library(xml2)加载,支持通过read_xml()读取本地文件或URL。

r语言怎么读取和处理xml数据

R语言读取和处理XML数据,核心是用xml2包(推荐)或XML包。前者语法简洁、稳定性好,是目前主流选择。

安装并加载xml2包

如果没装过,先运行:

install.packages("xml2")
加载后即可使用:

library(xml2)

从文件或URL读取XML

支持本地文件路径或网页地址:

  • 读本地XML文件:doc
  • 读网络XML(如API返回):doc
  • 读字符串内容:doc <item>abc</item>")

提取节点和文本内容

常用函数有xml_find_all()xml_text()xml_attr()

Kreado AI
Kreado AI

Kreado AI是一个多语言AI视频创作平台,只需输入文本或关键词,即可创作真实/虚拟人物的多语言口播视频。 为创作者提供AI赋能

Kreado AI 182
查看详情 Kreado AI
  • 找所有<item></item>节点:items
  • 提取文本:xml_text(items) → 得到字符向量
  • 提取属性值:xml_attr(items, "id")(假设<item id="1"></item>
  • 按层级查找更准:xml_find_all(doc, "/root/item/name")

转成数据框(结构化处理)

如果XML是规则的列表结构(比如多个同级<record></record>),可手动构建data.frame:

records <- xml_find_all(doc, "//record")<br>
df <- data.frame(<br>
  name = xml_text(xml_find_all(records, "./name")),<br>
  age  = as.numeric(xml_text(xml_find_all(records, "./age"))),<br>
  id   = xml_attr(records, "id")<br>
)
登录后复制

对嵌套深或不规则XML,建议先用as_list()转为R列表再处理:as_list(doc),便于调试结构。

基本上就这些。不复杂但容易忽略的是:注意编码(中文乱码时加encoding = "UTF-8"参数)、检查节点是否存在(用length()>0防报错)、以及用//前缀做模糊匹配更灵活。

以上就是R语言怎么读取和处理XML数据的详细内容,更多请关注php中文网其它相关文章!

相关标签:
最佳 Windows 性能的顶级免费优化软件
最佳 Windows 性能的顶级免费优化软件

每个人都需要一台速度更快、更稳定的 PC。随着时间的推移,垃圾文件、旧注册表数据和不必要的后台进程会占用资源并降低性能。幸运的是,许多工具可以让 Windows 保持平稳运行。

下载
来源:php中文网
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
最新问题
热门推荐
开源免费商场系统广告
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号