首页 > 解决方案 > 使用 R 从 Dropbox 导入 .asc 文件

问题描述

我有一堆需要通过 Dropbox 共享链接访问的 .asc 光栅文件。由于某种原因,我无法将文件读入 R。我尝试了raster()read.csv()read.table()函数,但都返回错误。R 声称这些文件不存在,而 Dropbox 共享链接实际上包含 .asc 文件。有什么建议我哪里出错了吗?

Error in .rasterObjectFromFile(x, band = band, objecttype = "RasterLayer",  : 
  Cannot create a RasterLayer object from this file. (file does not exist)

我的代码

library(raster)

# define projection
RD_Proj4 = '+proj=sterea +lat_0=52.15616055555555 +lon_0=5.38763888888889 +k=0.9999079 +x_0=155000 +y_0=463000 +ellps=bessel +units=m +towgs84=565.2369,50.0087,465.658,-0.406857330322398,0.350732676542563,-1.8703473836068,4.0812 +no_defs'

# The share link for the Dropbox .asc files
pm10 <- "https://www.dropbox.com/s/vkvbabwcwdk2r3q/conc_pm10_2019.asc?dl=0"
no2 <- "https://www.dropbox.com/s/foq2yufvi3694gt/conc_no2_2019.asc?dl=0"

# Trying to fetch the files from Dropbox
rasterData <- raster(pm10, crs = RD_Proj4)

标签: rdropboxraster

解决方案


@MrFlick 指出正确的 URL 是什么,你可以这样做

library(raster)
RD_Proj4 = '+proj=sterea +lat_0=52.15616055555555 +lon_0=5.38763888888889 +k=0.9999079 +x_0=155000 +y_0=463000 +ellps=bessel +units=m +towgs84=565.2369,50.0087,465.658,-0.406857330322398,0.350732676542563,-1.8703473836068,4.0812 +no_defs'

pm10 <- "https://www.dropbox.com/s/vkvbabwcwdk2r3q/conc_pm10_2019.asc?dl=1"
r <- raster(pm10, crs=RD_Proj4)
r 

#class      : RasterLayer 
#dimensions : 320, 280, 89600  (nrow, ncol, ncell)
#resolution : 1000, 1000  (x, y)
#extent     : 0, 280000, 3e+05, 620000  (xmin, xmax, ymin, ymax)
#crs        : +proj=sterea +lat_0=52.1561605555556 +lon_0=5.38763888888889 +k=0.9999079 +x_0=155000 +y_0=463000 +ellps=bessel +towgs84=565.2369,50.0087,465.658,-0.406857330322398,0.350732676542563,-1.8703473836068,4.0812 +units=m +no_defs 
#source     : https://www.dropbox.com/s/vkvbabwcwdk2r3q/conc_pm10_2019.asc?dl=1 
#names      : conc_pm10_2019.asc.dl.1 

推荐阅读