开发手册 欢迎您!
软件开发者资料库

R - XML文件

R XML文件 - 从简单和简单的步骤学习R编程语言,从基本到高级概念,包括R安装,语言基础,语法,文字,数据类型,变量,函数,循环,决策,模块,数组,列表,矢量,数学,矩阵,统计,图形,Excel数据,csv数据,概述,环境设置,运算符,字符串,因子,数据框,包,数据整形,二进制文件,XML文件,Json文件,Web数据,数据库,饼图图表,条形图,箱线图,直方图,线图,散点图,平均值,中位数和模式,线性回归,多元回归,Logistic回归,正态分布,二项分布,泊松回归,协方差分析,时间序列分析,非线性最小二乘,决策树,随机森林,生存分析,卡方检验。

XML是一种文件格式,它使用标准ASCII文本在万维网,内联网和其他地方共享文件格式和数据.它代表可扩展标记语言(XML).与HTML类似,它包含标记标记.但是与标记标记描述页面结构的HTML不同,在xml中标记标记描述了包含在文件中的数据的含义.

您可以使用以下内容读取R中的xml文件. "XML"包.可以使用以下命令安装此软件包.

install.packages("XML")

输入数据

通过将以下数据复制到文本编辑器(如记事本)来创建XMl文件.使用 .xml 扩展名保存文件,并选择文件类型为所有文件(*.*).

         1      Rick      623.3      1/1/2012      IT            2      Dan      515.2      9/23/2013      Operations               3      Michelle      611      11/15/2014      IT               4      Ryan      729      5/11/2014      HR               5      Gary      843.25      3/27/2015      Finance               6      Nina      578      5/21/2013      IT               7      Simon      632.8      7/30/2013      Operations               8      Guru      722.5      6/17/2014      Finance   

读取XML文件

R使用 xmlParse()函数读取xml文件.它作为列表存储在R中.

 #加载读取XML文件所需的包.  library("XML")#还加载其他所需的包.  library("methods")#将输入文件名赋予函数.  result<  -  xmlParse(file ="input.xml")#打印结果. print(result)

当我们执行上面的代码时,它产生以下结果 :

1Rick623.31/1/2012IT2Dan515.29/23/2013Operations3Michelle61111/15/2014IT4Ryan7295/11/2014HR5Gary843.253/27/2015Finance6Nina5785/21/2013IT7Simon632.87/30/2013Operations8Guru722.56/17/2014Finance

获取XML文件中存在的节点数

 #加载读取XML文件所需的包.  library("XML") library("methods")#将输入文件名赋予函数.  result<  -  xmlParse(file ="input.xml")#从xml文件中提取根节点.  rootnode<  -  xmlRoot(result)#查找根目录中的节点数.  rootsize<  -  xmlSize(rootnode)#打印结果.  print(rootsize)

当我们执行上面的代码时,它产生以下结果 :

output[1] 8

第一个节点的详细信息

让我们看一下解析文件的第一条记录.它将让我们了解顶级节点中存在的各种元素.

 #加载读取XML文件所需的包.  library("XML") library("methods")#将输入文件名赋予函数.  result<  -  xmlParse(file ="input.xml")#从xml文件中提取根节点.  rootnode< -  xmlRoot(result)#打印结果.  print(rootnode[1])

当我们执行上面的代码时,它产生以下结果 :

$EMPLOYEE   1   Rick   623.3   1/1/2012   IT attr(,"class")[1] "XMLInternalNodeList" "XMLNodeList"

获取不同的元素节点

 #加载读取XML文件所需的包.  library("XML") library("methods")#将输入文件名赋予函数.  result<  -  xmlParse(file ="input.xml")#从xml文件中提取根节点.  rootnode<  -  xmlRoot(result)#获取第一个节点的第一个元素.  print(rootnode [[1]][[1]])#获取第一个节点的第五个元素.  print(rootnode [[1]][[5]])#获取第三个节点的第二个元素.  print(rootnode [[3]][[2]])

当我们执行上面的代码时,它产生以下结果 :

1 IT Michelle

XML到数据框

为了在大文件中有效地处理数据,我们将xml文件中的数据作为数据框读取.然后处理数据框以进行数据分析.

#加载读取XML文件所需的包.  library("XML") library("methods")#将输入的xml文件转换为数据框.  xmldataframe<  -  xmlToDataFrame("input.xml") print(xmldataframe)

当我们执行上面的代码时,它产生以下结果 :

      ID    NAME     SALARY    STARTDATE       DEPT 1      1    Rick     623.30    2012-01-01      IT2      2    Dan      515.20    2013-09-23      Operations3      3    Michelle 611.00    2014-11-15      IT4      4    Ryan     729.00    2014-05-11      HR5     NA    Gary     843.25    2015-03-27      Finance6      6    Nina     578.00    2013-05-21      IT7      7    Simon    632.80    2013-07-30      Operations8      8    Guru     722.50    2014-06-17      Finance

由于数据现在可用作数据帧,我们可以使用与数据帧相关的函数来读取和操作文件.