R中的属性值错误中不允许未转义的“<”

Mik*_*ros 6 xml parsing r

我有许多 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>
Run Code Online (Sandbox Code Playgroud)

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

小智 5

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

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

我使用下面的来源作为参考。

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