xml - R中的属性值错误中不允许未转义的 '<'

标签 xml r parsing

我有许多 XML 格式的“原始”主题数据,我需要将它们读入数据表以处理一些汇总统计数据。我用于测试的程序为我提供了以下输出(文件中一个事件的片段):

    <Event>
      <Data name="Relation1" value="<"></Data>
      <Data name="Relation2" value="4    R"></Data>
      <Data name="Group" value="0"></Data>
      <Data name="CorrResult" value="S"></Data>
      <Data name="Response" value="S"></Data>
      <Data name="RT" value="787"></Data>
      <Data name="Result" value="C"></Data>
      <Data name="Gap" value="0"></Data>
      <Data name="IntraGap" value="0"></Data>
      <Data name="ISI" value="0"></Data>
    </Event>

第一个数据字段“Relation1”的值始终为“<”或“>”。有没有办法让 R 将其识别为数据值而不是新属性值的开始?我已经使用 XML 和 XML2R 包尝试了很多事情,但最终总是在一长串错误列表的顶部出现错误。

最佳答案

在 XML 中 < 或 & 用作值是严格非法的。还有更多不是严格违法的,但最好避免。请改用实体引用。所以您的 XML 文件会生成一个错误。 < 的实体引用是 < 和 > 是 >

如果你不能改变输出过程,你可以写一个过程以文本方式改变文件;我的意思是,逐行读取文件。如果检测到relation1,则更改其后的第一个<或>;之后它应该工作。我无法向您展示这是如何在 R 中完成的,因为我不懂该语言。

我使用以下来源作为引用。

http://www.w3schools.com/xml/xml_syntax.asp

关于xml - R中的属性值错误中不允许未转义的 '<',我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22463154/

相关文章:

c++ - boost spirit语法的不一致行为

android - 使用 Android 设计支持库的工具栏间距问题

java - Java Rest 服务响应的 XML 解析

r - 无法弄清楚如何从虚拟变量标题中删除列名称

r - 如何跨不同年份使用for循环并将多个地 block 放在一起?

json - 将 JSON 解析为 shell 脚本中的数组

parsing - opennlp vs 斯坦福大学 nlptools vs 伯克利大学

Android XML 布局可以横向工作,但不能正常方向工作

Python XML - 从动态嵌套的 "node"元素构建平面记录

r - 在 R 中自动过滤测量数据