解析R中的XML数据列表的循环或函数

问题描述 投票:0回答:1

我正在寻找一个循环或函数来改善我当前的XML数据解析过程(我必须解析其中的10个)

我当前的过程是

library(xml2, tidyverse)

data1 <- read_xml("http://wayback.archive-it.org/7993/20170406200517/https://www.fda.gov/DataSets/Recalls/2009-2011/RecallsDataSet2009-2011.xml")
data2 <- read_xml("http://wayback.archive-it.org/7993/20170405004549/https://www.fda.gov/DataSets/Recalls/2012-2014/RecallsDataSet2012-2014.xml")

df_brand <- data %>% 
  xml_find_all("//BRAND_NAME") %>% 
  xml_text()

df_product_description <- data %>% 
  xml_find_all("//PRODUCT_DESCRIPTION") %>% 
  xml_text()

df_reason <- data %>% 
  xml_find_all("//REASON") %>% 
  xml_text()

df_company <- data %>% 
  xml_find_all("//COMPANY") %>% 
  xml_text()

df_company_link <- data %>% 
  xml_find_all("//COMPANY_RELEASE_LINK") %>% 
  xml_text()

# Combine all into a dataframe one by one
abc <- data.frame(sapply(ls(pattern="^df"), get))
efg <- data.frame(sapply(ls(pattern="^df"), get))

通过循环或函数完成此任务的任何方法吗?

r function loops apply lapply
1个回答
0
投票
((请注意,library(xml2, tidyverse)并未真正导入tidyverse包。您必须对库函数进行两次单独的调用)

您是否正在询问如何将xpath列表运行到data1结构中并将输出合并到一个数据帧中?

© www.soinside.com 2019 - 2024. All rights reserved.