[R] Convert data frame to XML-Tree
Dieter Menne
dieter.menne at menne-biomed.de
Fri Feb 12 11:18:07 CET 2010
T.Wunder wrote:
>
>>> Well, now I get a warning message like
>>> "In xmlRoot.XMLInternalDocument(currentNodes[[1]]) : empty XML document"
>>>
>>> if I use this function. How could this be fixed?
>>>
>>>
>>
>> By telling use how you "used" that function.
>
> I'm sorry. I have a data frame df and typed
>
> convertToXML(df,"Tabelle")
>
>
If you use that function, you first get an error message that XML is unknown
because you did not tell us that you used library(XML). It's the best guess
here, but in many cases there are several libraries (pardon, Martin,
packages) that do the same.
Then it tells us that df is unknown, because you did not tell us what the
data frame was. It could be a problem in your df, for example some
unexpected data.
So let's try a self-contained example with the iris data set available in
all installations. It shows that everything works Ok, with the exception of
the warning. By converting it to an error, your can locate the warning at
the line xmlTree.
The warning can be simply reproduced by
library(XML)
xmlTree("Dummy")
Dieter
library(XML) # or did you use a different package?
convertToXML <- function(df,name)
{
xml <- xmlTree("Test")
xml$addNode(name, close=FALSE)
for (i in 1:nrow(df)) {
xml$addNode("value", close=FALSE)
for (j in names(df)) {
xml$addNode(j, df[i, j])
}
xml$closeTag()
}
xml$closeTag()
return(xml)
}
data(iris) # these data are always there
str(iris)
tr = convertToXML(iris,"Tabelle")
cat(saveXML(tr$value())) ## looks good
options(warn=2) # to find where the warning occured
cat(saveXML(tr$value())) ## looks good
traceback()
## Looks like it is no problem of the function, because the following line
# shows the same error
xmlTree("Dummy")
# Report it to Duncan
R version 2.10.1 (2009-12-14)
i386-pc-mingw32
locale:
[1] LC_COLLATE=German_Germany.1252 LC_CTYPE=German_Germany.1252
[3] LC_MONETARY=German_Germany.1252 LC_NUMERIC=C
[5] LC_TIME=German_Germany.1252
attached base packages:
[1] stats graphics grDevices datasets utils methods base
other attached packages:
[1] XML_2.6-0
loaded via a namespace (and not attached):
[1] tools_2.10.1
>
--
View this message in context: http://n4.nabble.com/Convert-data-frame-to-XML-Tree-tp1478281p1478356.html
Sent from the R help mailing list archive at Nabble.com.
More information about the R-help
mailing list