📜  R-XML文件

📅  最后修改于: 2020-11-29 07:48:59             🧑  作者: Mango


XML是一种文件格式,它使用标准ASCII文本在Internet,Intranet和其他地方共享文件格式和数据。它代表可扩展标记语言(XML)。与HTML相似,它包含标记标签。但是与HTML的markup标签描述页面结构不同,在xml中,markup标签描述文件中包含的数据的含义。

您可以使用“ XML”包读取R中的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中。

# 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.
result 

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

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文件中存在的节点数

# Load the packages required to read XML files.
library("XML")
library("methods")

# Give the input file name to the function.
result 

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

output
[1] 8

第一个节点的详细信息

让我们看一下解析文件的第一条记录。它将使我们对顶层节点中存在的各种元素有所了解。

# Load the packages required to read XML files.
library("XML")
library("methods")

# Give the input file name to the function.
result 

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

$EMPLOYEE
   1
   Rick
   623.3
   1/1/2012
   IT
 

attr(,"class")
[1] "XMLInternalNodeList" "XMLNodeList" 

获取节点的不同元素

# Load the packages required to read XML files.
library("XML")
library("methods")

# Give the input file name to the function.
result 

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

1 
IT 
Michelle 

XML到数据框

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

# Load the packages required to read XML files.
library("XML")
library("methods")

# Convert the input xml file to a data frame.
xmldataframe 

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

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

由于现在可以将数据用作数据框,因此我们可以使用与数据框相关的函数来读取和操作文件。