如何提取多个 XML 文件的文件属性并将它们与 XML 提取的数据组合(使用 R)
How to extract file properties of multiple XML files and combine them with the XML extracted data (Using R)
我是 R 的新手,需要一些帮助(提取和)将文件名和属性与从多个 xml 文件(大约 200 个)中提取的数据相结合,然后将这些文件转换为数据框。
我正在使用以下脚本 select xml 文件,提取数据并将其转换为数据帧(并且可以正常工作):
library(XML)
library(plyr)
# Select multiple xml files within directory
FileName <- list.files(pattern = "xml$",
ignore.case=TRUE,
full.names = FALSE)
# Create function to extract data
RI_ID <-function(FileName) {
doc1 <- xmlParse(FileName)
doc <- xmlToDataFrame(doc1["//ObjectList[@ObjectType='pkg']/o"], )
}
# Convert to dataframe
T1 <- ldply(FileName,RI_ID)
# Rename columns
names(T1)[names(T1) == "a"] <- "UniqueInstallationPackageID"
names(T1)[names(T1) == "b"] <- "PackageVersion_Latest"
# Convert to numeric
FieldToNumeric <- c("UniqueInstallationPackageID", "PackageVersion_Latest")
T1[,FieldToNumeric] <- lapply(T1[,FieldToNumeric], as.numeric)
我想(并且需要一些帮助):
- 提取 xml 文件在 windows 资源管理器中显示的修改日期;
- 包括文件名和修改日期作为最终数据框的一部分。
我查看了以下两个来源,但没有成功实施它们:
由于保密协议,我无法分享xml文件的示例,但如果需要,可以重命名节点等并提交。感谢您的帮助。
只需调整 RI_ID
方法来检索这两条信息(使用 file.info
和 FileName
变量修改 date/time 并将这些值绑定到 xml 数据框。 transform()
下方允许使用逗号分隔分配将列添加到数据框:
# Create function to extract data
RI_ID <-function(FileName) {
doc <- xmlParse(FileName)
df <- transform(xmlToDataFrame(doc["//ObjectList[@ObjectType='pkg']/o"]),
file_name = FileName,
file_modified = file.info(FileName)$mtime)
}
我是 R 的新手,需要一些帮助(提取和)将文件名和属性与从多个 xml 文件(大约 200 个)中提取的数据相结合,然后将这些文件转换为数据框。
我正在使用以下脚本 select xml 文件,提取数据并将其转换为数据帧(并且可以正常工作):
library(XML)
library(plyr)
# Select multiple xml files within directory
FileName <- list.files(pattern = "xml$",
ignore.case=TRUE,
full.names = FALSE)
# Create function to extract data
RI_ID <-function(FileName) {
doc1 <- xmlParse(FileName)
doc <- xmlToDataFrame(doc1["//ObjectList[@ObjectType='pkg']/o"], )
}
# Convert to dataframe
T1 <- ldply(FileName,RI_ID)
# Rename columns
names(T1)[names(T1) == "a"] <- "UniqueInstallationPackageID"
names(T1)[names(T1) == "b"] <- "PackageVersion_Latest"
# Convert to numeric
FieldToNumeric <- c("UniqueInstallationPackageID", "PackageVersion_Latest")
T1[,FieldToNumeric] <- lapply(T1[,FieldToNumeric], as.numeric)
我想(并且需要一些帮助):
- 提取 xml 文件在 windows 资源管理器中显示的修改日期;
- 包括文件名和修改日期作为最终数据框的一部分。
我查看了以下两个来源,但没有成功实施它们:
由于保密协议,我无法分享xml文件的示例,但如果需要,可以重命名节点等并提交。感谢您的帮助。
只需调整 RI_ID
方法来检索这两条信息(使用 file.info
和 FileName
变量修改 date/time 并将这些值绑定到 xml 数据框。 transform()
下方允许使用逗号分隔分配将列添加到数据框:
# Create function to extract data
RI_ID <-function(FileName) {
doc <- xmlParse(FileName)
df <- transform(xmlToDataFrame(doc["//ObjectList[@ObjectType='pkg']/o"]),
file_name = FileName,
file_modified = file.info(FileName)$mtime)
}