Я анализирую кучу больших XML-файлов, используя пакет XML
для значений переменной "varname
".Код, который я использую:
library(XML)
a = xmlTreeParse("/path/filename.xml")
r = xmlRoot(a)
namelist = list()
for(i in 1:xmlSize(r)){namelist[[i]] <- xmlValue(xmlChildren(r[[i]])$varname)}
Поскольку это занимает много времени, я попытался параллельной обработки:
library(foreach)
library(doMC)
registerDoMC()
namelist = list()
namelist <- foreach(i = 1:xmlSize(r)) %dopar% {namelist[[i]] <- xmlValue(xmlChildren(r[[i]])$varname)}
Это быстрее, но все еще замораживает моймашина для достаточно больших файлов.Есть ли способ обойти эту проблему?