terra_rasterize错误:[rasterize]无法创建数据集



我正在尝试使用Rterra(v.1.6-7(中的光栅化函数将与市政当局相关的人口值转移到光栅。我这样做是为了两个形状文件,dipomun00gw.shpmunicipiosPOP.shp。这是代码:

library(terra)
# Read shapefiles for 2000 and 2010
v_00 <- vect("dipomun00gw.shp")
v_10 <- vect("municipiosPOP.shp")
# create blank rasters using each year's shape file as extent
r_00 <- rast(v_00, res=.01)  
r_10 <- rast(v_10, res=.01)  
# Rasterize
x_00 <- rasterize(v_00, r_00, "POTO00")
x_10 <- rasterize(v_10, r_10, "POB_10")  
#Error: [rasterize] cannot create dataset

由于某些原因,v_00光栅化没有任何问题,但v_10会产生错误。

我无法确定形状文件municipiosPOP.shp的哪个特性导致了此错误。

有人知道发生了什么事吗?

可以在此处访问形状文件。

原因是r_10太大(它有>6.4e+16个细胞!(

r_10
#class       : SpatRaster 
#dimensions  : 203046581, 317517559, 1  (nrow, ncol, nlyr)
#resolution  : 0.01, 0.01  (x, y)
#extent      : 907821.8, 4082997, 319149.1, 2349615  (xmin, xmax, ymin, ymax)
#coord. ref. : North_America_Lambert_Conformal_Conic 

这是因为您指定了0.01(即~1厘米(的空间分辨率,您可能认为您使用的是0.01度(~1公里(。如果您首先将v_10投影到long/lat(如v_00(,那么您的代码就可以工作。

v_10 <- project(v_10, crs(v_00))   

相关内容

  • 没有找到相关文章

最新更新