首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >欧盟统计局批量SDMX数据下载到R?

欧盟统计局批量SDMX数据下载到R?
EN

Stack Overflow用户
提问于 2015-06-01 06:13:18
回答 1查看 350关注 0票数 1

我在尝试从欧盟统计局下载批量数据时遇到了一些问题,希望你能帮助我。我的代码基于这个post

代码语言:javascript
复制
library(devtools)
require(devtools)
install_github("rsdmx", "opensdmx")
require(rsdmx)

# Make a temporary file (tf) and a temporary folder (tdir)
tf <- tempfile(tmpdir = tdir <- tempdir())

## Download the zip file 
download.file("http://ec.europa.eu/eurostat/estat-navtree-portlet-prod/BulkDownloadListing?sort=1&file=data%2Frd_e_gerdsc.sdmx.zip", tf)

## Unzip it in the temp folder
test <- unzip(tf, exdir = tdir)

sdmx <- readSDMX(test)

stats <- as.data.frame(sdmx)
head(stats)

我收到这个警告,数据帧是空的:

代码语言:javascript
复制
Warning message:
In if (attr(regexpr("<!DOCTYPE html>", content), "match.length") ==  :
  the condition has length > 1 and only the first element will be used
EN

回答 1

Stack Overflow用户

发布于 2015-06-01 19:08:15

在欧盟统计局中,提取的结果由两个独立的XML文件组成:

  • DSD (data structure definition,数据结构定义),描述

dataset本身的SDMX数据集。

根据您的代码,尝试如下所示:

代码语言:javascript
复制
testfile <- test[2] #path for the dataset
sdmx <- readSDMX(testfile, isURL = FALSE) # isURL = FALSE (to read a local file)
stats <- as.data.frame(sdmx)
head(stats)

注意:调用as.data.frame可能需要一些时间才能完成,具体取决于数据集的大小。我一直在执行更多的测试,以便进一步提高读取大型SDMX数据集的性能。

您的用例非常有趣,我将把它添加到rsdmx documentation中,因为它展示了如何使用欧盟统计局批量下载服务和rsdmx。

希望这能有所帮助!

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/30563273

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档