简单地尝试使用矢量(.shp)来屏蔽使用terra::mask
的SpatRaster;得到以下错误
>Error: \[mask\] cannot create dataset
LCC84 <- rast("C:/Users_forest_VLCE2_1984.tif")
vec <- vect("C:/Users/Land_Management_Units.shp")
vec_proj <- project(vec, LCC84)
LCC84_masked <- terra::mask(LCC84, vec_proj)
错误:[mask]无法创建数据集
vec
#class : SpatVector
#geometry : polygons
#dimensions : 1, 8 (geometries, attributes)
#extent : -117.3165, -115.1691, 50.70613, 52.27127 (xmin, xmax, ymin, ymax)
#coord. ref. : lon/lat NAD83 (EPSG:4269)
LCC84
#class : SpatRaster
#dimensions : 128340, 193936, 1 (nrow, ncol, nlyr)
#resolution : 30, 30 (x, y)
#extent : -2660911, 3157169, -851351.9, 2998848 (xmin, xmax, ymin, ymax)
#coord. ref.: Lambert_Conformal_Conic_2SP
#source : CA_forest_VLCE2_1984.tif
#name : CA_forest_VLCE2_1984
crs(LCC84, proj=TRUE)
[1] "+proj=lcc +lat_0=49 +lon_0=-95 +lat_1=49 +lat_2=77 +x_0=0 +y_0=0 +datum=NAD83 +units=m +no_defs"
2条答案
按热度按时间czq61nw11#
您可以使用以下代码
xxls0lw82#
你提供的数据对我有用
第一次裁剪看起来很合理,因为整个数据集有250亿个细胞。
运行它花了一段时间,但它工作了。如果它不适合你,我猜你可能没有足够的磁盘空间在你的临时文件夹。查看
terraOptions()
的临时文件夹的位置。同时,您还可以执行以下操作
但这毫无意义,因为您的光栅数据没有EPSG:4269坐标参考系(lon/lat NAD 83)。