首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >下载WorldPop人口计数光栅

下载WorldPop人口计数光栅
EN

Stack Overflow用户
提问于 2020-11-24 10:11:32
回答 2查看 252关注 0票数 1

我有兴趣下载联合国调整后的刚果民主共和国2020年第二次决议(见WorldPop (见这里 )为GeoTIFF (.tif)文件)。我试图为多个国家做这件事--我在探索wpgpDownloadR包。

代码语言:javascript
运行
复制
devtools::install_github("wpgp/wpgpDownloadR")
library(wpgpDownloadR)
wpgpListCountryDatasets(ISO3="COD")

我能否得到一些帮助,直接下载特定国家的WorldPop人口计数.tif文件(例如,刚果民主共和国、尼日利亚、比利时、法国等)?

我有一个R代码来将这个GeoTIFF光栅(.tif文件)转换成一个NetCDF (.nc文件),如果我已经在本地下载了tif文件,但是如果我想要一个不同的国家,我必须下载它,然后再做一次。

代码语言:javascript
运行
复制
library(raster)

# Downloaded from above website
DRCWorldPop <- raster("cod_ppp_2020_1km_Aggregated_UNadj.tif") 

rnc <- writeRaster(DRCWorldPop, filename ='DRC_0000.nc', format = "CDF",  varname = "Susceptible", varunit = "Persons", longname = "Susceptible", overwrite = TRUE)

我正在尝试使用ftp下载任何国家的的栅格的单一通用代码。请你指出正确的方向好吗?谢谢您抽时间见我。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2020-11-24 19:33:40

你可以做这样的事

代码语言:javascript
运行
复制
library(raster)
library(wpgpDownloadR)

iso3 <- "RWA"
cov <- "ppp_2000"
path <- dirname(tempdir())

f <- file.path(path, tolower(paste0(iso3, "_", cov, ".tif")))
if (!file.exists(f)) {
    f <- wpgpGetCountryDataset(ISO3 = "RWA", covariate = "ppp_2000", destDir=path) 
}
r <- raster(f)

这允许你在国家和协变量之间循环。它还避免下载您已经拥有的文件。

票数 1
EN

Stack Overflow用户

发布于 2021-06-29 09:20:22

在下载灰分光栅时,我遇到了与WorldPop相同的问题,我认为指出wpgpGetCountryDataset()函数中存在一个bug可能会有所帮助。该函数将'covariate‘参数转换为小写,我认为这将导致它无法在随后调用其他内部函数时匹配所需的数据集,从而导致下载失败。

这仅适用于具有上下文本大小写的协变量(例如,对于包含字符串UNadj的协变量,它将转换为unadj)。这将导致错误消息,例如:

Entered Covariates: ppp_2020_1km_aggregated_unadj not present in WP

作为一种临时解决办法,我成功地下载了数据,方法是注释掉函数中的行covariate <- tolower(covariate)。以问题的形式提交给Github。

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

https://stackoverflow.com/questions/64984311

复制
相关文章

相似问题

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