📅  最后修改于: 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
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
# 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文件中的数据作为数据帧读取。然后处理数据框以进行数据分析。
# 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
由于现在可以将数据用作数据框,因此我们可以使用与数据框相关的函数来读取和操作文件。