У меня есть простой data.frame с двумя переменными: title и base64. Мне нужно преобразовать этот data.frame в формат XML. Например, вот как выглядят мои данные ..
str(df)
'data.frame': 2 obs. of 2 variables:
$ title : chr "Page One" "Page Two"
$ base64: chr "Very Long String thats a base64 character" "Very Long String thats a base64 character"
Структура dput (df) (список (page = c ("Первая страница", "Вторая страница"), base64 = c ("Очень длинная строка, содержащая символ base64", "Очень длинная строка, содержащая символ base64")),. Names = c ("страница", "base64"), row.names = 1: 2, class = "data.frame")
Мне нужно вывести XML-файл в таком формате ...
<report type="enchanced">
<pages>
<page>
<title>Page One</title>
<page> *** long base64 string *** </page>
</page>
<page>
<title>Page Two</title>
<page> *** long base64 string *** </page>
</page>
</pages>
</report>
Я экспериментировал с пакетом XML в R и даже нашел эту функцию, которая, похоже, должна работать, но я не могу ее понять. Любая помощь приветствуется.
library(XML)
convertToXML <- function(df,name) {
xml <- xmlTree("report")
xml$addNode(name, close=FALSE)
for (i in 1:nrow(df)) {
xml$addNode("page", close=FALSE)
for (j in names(df)) {
xml$addNode(j, df[i, j])
}
xml$closeTag()
}
xml$closeTag()
return(xml)
}
tr = convertToXML(df,"pages")
cat(saveXML(tr$page())) ## suppose to looks good