我有一个看起来像这样的数据框 df :
CODE GROUP SET
1 100 6000 20
2 100 7000 30
3 200 8000 40
如何根据下面的示例通过管道分隔和包装数据框行?
<rows>
<row>100|6000|20</row>
<row>100|7000|30</row>
<row>200|8000|40</row>
<rows>
最佳答案
您可以使用 xmlOutputDOM
函数。它使用各种方法创建一个对象来创建 XML:
myDF <- read.table(text = " CODE GROUP SET
1 100 6000 20
2 100 7000 30
3 200 8000 40", header = TRUE)
library(XML)
con <- xmlOutputDOM(tag="rows")
apply(myDF, 1, function(x){
con$addTag("row", paste(x, collapse = "|"))
})
> (myXML <- con$value())
<rows>
<row>100|6000|20</row>
<row>100|7000|30</row>
<row>200|8000|40</row>
</rows>
要将创建的 XML 输出为字符,您可以使用 saveXML
:
> cat(saveXML(myXML))
<?xml version="1.0"?>
<rows>
<row>100|6000|20</row>
<row>100|7000|30</row>
<row>200|8000|40</row>
</rows>
关于xml - 将数据框转换为 XML,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26886102/