我有一个XML文档,它有一个相当有序的结构,(虽然我没有像模式或DTD那样好的东西)。我希望通过其他人的输入来更改/添加/删除XML文件的元素。
为此,我想获取我的XML文件,将其转换为每个标记一行,每个属性一列的数据帧,然后编辑数据帧(或导出到csv,让别人编辑,然后重新输入) ,然后转换回XML。
目前,此代码执行第一部分将XML转换为dataframe
foo<-xmlParseDoc("example.xml")
bar<-xmlSApply(xmlRoot(foo), xmlAttrs, addNamespaceURLs=TRUE)
tempdf<-data.frame()
templist<-list()
n<-1
for(i in seq(length(bar))){
message(i)
if(!is.null(bar[[i]])){
message(bar[[i]])
tempdf<-rbind.fill(tempdf, data.frame(t(bar[[i]]), stringsAsFactors=FALSE))
n<-n+1
}
}
但我仍然坚持如何将此数据帧转换回XML等价物。有什么想法吗?
答案 0 :(得分:-2)
xmlToDataFrame包怎么样?我认为它不仅可以将xml读取到帧中,还可以将帧写回XML文件。我自己从未使用过