R语言批量裁剪栅格数据

在R语言中,你可以使用`raster`包来批量裁剪栅格数据。以下是一个简单的示例代码:


library(raster)

# 设置裁剪区域
clip_area <- extent(xmin, xmax, ymin, ymax)  # 根据实际情况设置裁剪区域的坐标范围

# 批量读取栅格数据
files <- list.files(path = "路径", pattern = ".tif$", full.names = TRUE)  # 根据实际情况替换路径和文件名匹配规则
rasters <- lapply(files, raster)

# 批量裁剪栅格数据
cropped_rasters <- lapply(rasters, crop, extent = clip_area)

# 批量保存裁剪后的栅格数据
output_path <- "输出路径"  # 根据实际情况设置输出路径
names <- gsub(".tif", "_clip.tif", basename(files))  # 替换文件名后缀
mapply(writeRaster, cropped_rasters, file.path(output_path, names), format = "GTiff")

# 可选:释放内存
rm(cropped_rasters)
 

请注意,需要将代码中的`xmin`、`xmax`、`ymin`、`ymax`替换为实际的裁剪区域坐标范围,并将`路径`、`.tif$`、`输出路径`替换为实际的文件和路径信息。

这段代码将会逐个读取指定目录下的栅格数据文件(以.tif结尾),然后对每个栅格数据进行裁剪,最后将裁剪后的数据保存到指定的输出路径中。

猜你喜欢

转载自blog.csdn.net/2301_77925375/article/details/131282347