Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/r/75.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/xml/14.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何通过R从XML中提取数据到数据集_R_Xml - Fatal编程技术网

如何通过R从XML中提取数据到数据集

如何通过R从XML中提取数据到数据集,r,xml,R,Xml,这是我的源链接: 但是,我不知道如何将OddsSet的部分提取到数据集。有人能帮我吗?这应该可以: library(XML) library(xml2) library(purrr) url = paste("http://iosbsinfo02.hkjc.com/infoA/AOSBS/HR_GetInfo.ashx?QT=HR_ODDS_win&Venue=*&Race=7") doc = read_xml(url) OddsSet <- xml_find_all(do

这是我的源链接:

但是,我不知道如何将OddsSet的部分提取到数据集。有人能帮我吗?

这应该可以:

library(XML)
library(xml2)
library(purrr)
url = paste("http://iosbsinfo02.hkjc.com/infoA/AOSBS/HR_GetInfo.ashx?QT=HR_ODDS_win&Venue=*&Race=7")
doc = read_xml(url)
OddsSet <- xml_find_all(doc, ".//OddsSet") %>% 
  xml_children() %>% map(xml_attrs) %>% map_df(~as.list(.))

以属性为中心的数据抽取,考虑XML的内部方法XMLATTrSTATDATAFRAME,用三冒号操作符访问:

library(XML)
...

df <- XML:::xmlAttrsToDataFrame(getNodeSet(doc, path='//OddsInfo'))
library(XML)
library(xml2)
library(purrr)
url = paste("http://iosbsinfo02.hkjc.com/infoA/AOSBS/HR_GetInfo.ashx?QT=HR_ODDS_win&Venue=*&Race=7")
doc = read_xml(url)
OddsSet <- xml_find_all(doc, ".//OddsSet") %>% 
  xml_children() %>% map(xml_attrs) %>% map_df(~as.list(.))
library(XML)
...

df <- XML:::xmlAttrsToDataFrame(getNodeSet(doc, path='//OddsInfo'))