使用 R 和包 XML 我正在解析巨大的 XML 文件。作为数据处理的一部分,我现在需要在一长串节点中,每个节点有多少特定名称的子节点(节点数可以超过 20.000)
我目前的做法是:
nChildrenWithName <- xpathSApply(doc, path="/path/to/node/*", namespaces=ns, xmlName) == 'NAME'
nChildren <- xpathSApply(doc, path="/path/to/node", namespaces=ns, fun=xmlSize)
nID <- sapply(split(nChildrenWithName, rep(seq(along=nChildren), nChildren)), sum)
我可以得到它的矢量化。我仍然觉得这可以通过使用正确的 XPATH 表达式在单个调用中实现。不过,我对 XPATH 的了解有限,所以如果有人知道该怎么做,我将不胜感激……
最好的托马斯