Как извлечь значения зацикливая вложенные файлы.nxml в R

Я использую опубликованные данные в .nxml Формат У меня есть несколько категоризированных папок по темам (каждая содержит 100-300 файлов.nxml). Я написал следующий код, чтобы извлечь abstarct из одного файла и сохранить его как фрейм данных:

library(XML)
doc <- xmlParse("Genetics_2011_Aug_188(4)_799-808.nxml")
plant.df <- as.data.frame(t(xpathSApply(doc,"//abstract",function(x) xmlSApply(x,xmlValue))))

который работает для одного файла.

Мой вопрос, когда я использую:

files <- (list.files(pattern = "\\.nxml$"))

чтобы зациклить файлы в одной папке, он сохранил файлы как символ, поэтому я не мог использовать xmlParse из-за типа.(Я получил: Error: XML content does not seem to be XML:)

Как я могу зациклить файлы или, другими словами, автоматизировать процесс? Благодарю.

Обновлено:

    library(XML)
files <- c(list.files(pattern = "\\.nxml$",full.names=TRUE))
#print(typeof(files))
for (i in files)
  {
  allfiles <- xmlParse(i)
  abstract.df <- as.data.frame(t(xpathSApply(allfiles,"//abstract",function(x) xmlSApply(x,xmlValue))))
  }
print(abstract.df)

sink("outtext.txt") 
lapply(abstract.df, print) 
sink() 

0 ответов

Другие вопросы по тегам