这里使用的xml文件为CASOS提供的数据集company.xml

首先分析xml文件,截取一段xml代码

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

View Code

可以看到,在根节点底下有nodes和network两大类,需要提取的是在nodes这个节点下id和title的属性值,network节点下source和target的值,确定需要用到的组成csv文件的属性后,开始对xml文件进行处理。

①首先在R中加载xml包,读取xml文件

# Load the package required to read XML files.

library("XML");

# Also load the other required package.

library("methods");

# Give the input file name to the function.

xmlfile

②找到根节点,确定所需要的属性值在哪个节点下

#找到根节点

xmltop = xmlRoot(xmlfile)

# 得到id=agent类的node目录

#xmltop[[1]][[1]][[1]]

# 得到id=knowledge类的node目录

#xmltop[[1]][[1]][[2]]

# 得到id=task类的node目录

#xmltop[[1]][[1]][[3]]

#得到id=agent x agent类的network目录

#xmltop[[1]][[2]][[1]]

#得到id=agent x knowledge类的network目录

#xmltop[[1]][[2]][[2]]

#得到id=agent x task类的network目录

#xmltop[[1]][[2]][[3]]

③初始化一个向量,存储id的值,在最后将得到的几个向量组成一个数据框datafram对构造getNode函数,获得node的id属性值

由于没有找到R中相关的函数,所以自己写了一个repeat循环

getNodeId

#初始化向量nodes_id_temp,存储当前参数下获得的节点的id值

nodes_id_temp

#初始化i

i

#获得当前节点总数

n

repeat{

temp=xmlGetAttr(xmltop[[1]][[1]][[index]][[i]],name="id")

nodes_id_temp[i]

#print(nodes_id_temp[i])

i

if (i > n)

break;

}

nodes_id <

}

r语言 xmlto html,使用R语言将XML转换为CSV(示例代码)相关推荐

  1. C语言输入一串数字字符串,C语言——输入一个字符串,将连续数字字符转换为数字(示例代码)...

    输入一个字符串,内有数字和非数字字符,例如: A123cdf 456.78cpc876.9er 849.1 将其中连续的数字作为一个实数,依次存放到一数组a中.例如123存放在a[0],456.78存 ...

  2. c语言手写指针和乘号,C-学会使用指针(示例代码)

    先说:唯手熟尔 指针 指针存储着一个内存空间的地址 定义一个指针 int a: int * p: 定义一个指针,只需在变量前面加一个 * 号.这里的指针只能存储一个存放整数的内存空间的地址 指针如何存 ...

  3. C语言丨运算符号的三种用法(有示例代码)

    &: 在C语言中有两种意思,一种是取地址符,是单目运算符:另一种是位运算符,表示"按位与",是双目运算符. 1.用于指针赋值 #include<stdio.h> ...

  4. u32在c语言中的作用,c语言中u8,u16,u32(示例代码)

    u8是unsigned char,u16是unsigned short,u32是unsigned long. u8,u16,u32都是C语言数据类型,分别代表8位,16位,32位长度的数据类型,一个字 ...

  5. 三位数最大公约数c语言,C语言求最小公倍数和最大公约数三种算法(经典)(示例代码)...

    把以前写的一些经验总结汇个总,方便给未来的学弟学妹们做个参考! --------------------------永远爱你们的:Sakura 最小公倍数:数论中的一种概念,两个整数公有的倍数成为他们 ...

  6. c语言直方图最大矩形面积,直方图中最大矩形面积(示例代码)

    注意:本文并未对原文完整翻译,而是结合原文并根据本人理解写出,因此部分内容为完整翻译,部分内容为个人理解所写. Largest Rectangle in Histogram 直方图中最大矩形面积 一个 ...

  7. c51语言双精度浮点数,C51浮点数显示、浮点数表示方法(示例代码)

    C51里用4字节存储一个浮点数,格式遵循IEEE-754标准(详见c51.pdf第179页说明).一 个浮点数用两个部分表示,尾数和2的幂,尾数代表浮点上的实际二进制数,2的幂代表指 数,指数的保存形 ...

  8. R语言text函数在R原生可视化结果中添加文本标签、内容:指定文本显示的位置、颜色、字体大小等(Position、Change Color 、 Size of Text)

    R语言text函数在R原生可视化结果中添加文本标签.内容:指定文本显示的位置.颜色.字体大小等(Position.Change Color . Size of Text) 目录

  9. R语言pacman包管理R编程语言需要的包实战:使用p_load函数安装和加载多个R包、使用p_unload函数卸载多个R包、使用p_update函数更新过期的R包

    R语言pacman包管理R编程语言需要的包实战:使用p_load函数安装和加载多个R包.使用p_unload函数卸载多个R包.使用p_update函数更新过期的R包 目录

最新文章

  1. PDA(Personal Digital Assistance)
  2. 从零开始编写自己的C#框架(20)——框架异常处理及日志记录
  3. swfheader 0.10 Released(已更正下载地址)
  4. mysql grant 表通配符_mysql如何使用GRANT表----访问控制
  5. Android官方开发文档Training系列课程中文版:多样屏幕之实现自适应UI
  6. Crontab中文表达式解析
  7. git中.ssh文件夹在哪_关于git中的https和ssh,权限等问题
  8. 随机森林模型保存-python
  9. MRPT笔记——MRPT在VS2013中的配置
  10. PMP 风险应对措施 :规避和减轻的区别
  11. Access denied for user ‘bijian0530‘@‘localhost‘ (using password: YES)
  12. 暴雪-关于坚持的故事(转)
  13. java lob_oracle数值类型--LOB类型
  14. Java 经典设计模式-- 03.结构型模式
  15. 带电粒子在匀强电场中的运动(忽略重力)
  16. OOP Class具体解释
  17. 用计算机研究甲骨文,基于图像识别技术的甲骨文数据系统
  18. 如何配置NAT Server?
  19. 前端学习笔记(一)HTML5
  20. css显示苹方字体,苹方字体合集

热门文章

  1. @param注解的用法解析_SpringBoot 配置类解析
  2. 【数据结构与算法】哈夫曼树的Java实现
  3. 最新java初级高级,python基础进阶,机器学习视频资料
  4. Redis命令详解:Hashs
  5. redux 简明学习
  6. MVC过滤整个项目输入关键字
  7. Memcache简介
  8. 源码安装Bind 9.10 正式版 开启DLZ数据库支持 和 数据库view查询
  9. codeblocks下libcurl的配置
  10. IOS libxml/tree.h file not found 解决方案