我在 R 中处理一些 XML 数据时遇到了关于“externalptr”类型的错误。
1) 当我尝试使用 xmlInternalTreeParse() 函数(XML 包的一部分)时出现以下错误。
doc = xmlInternalTreeParse(xmldatavariable)
'Error in as.vector(x, "character") : cannot coerce type 'externalptr'
to vector of type 'character''
2) 当我尝试将 XML 数据写入文本文件时出现此错误,因此我可以查看它并查看可能是什么错误。
write(xmldatavariable,"sample.txt")
Error in cat(list(...), file, sep, fill, labels, append) :
argument 1 (type 'externalptr') cannot be handled by 'cat'
有什么建议吗?谢谢-Z
最佳答案
XML 包的工作原理是使您试图操作的 XML 文档成为指针文档。
'externalptr' 只是指向 xml 文档中数据的外部指针。
访问您需要使用的数据
Parsed.xml <- xmlTreeParse(xml) ## should be string with xml text
## get value of the first node
xmlValue(xml[[1]])
## get value of the third grandchild of the first node
xmlValue(xml[[1]][[45]][[3]])
您需要以列表的形式访问 xml 的每个节点。
关于xml - 使用 XML 数据的 R 中的“externalptr”错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8379348/