问题描述
我正在从单波段 geo-tiff 创建多波段栅格。这个想法是通过将单个图像堆叠三次来创建从单波段到多 (3) 波段的堆叠。我可以通过 - image1<-raster("image1.tif")
轻松地对单个图像执行此操作
stack_image1<- stack(image1,image1,image1)
如何运行此代码片段以在目录中的所有光栅图像上运行。
解决方法
你可以做这样的事情。 示例文件
f <- system.file("external/test.grd",package="raster")
ff <- c(f,f,f)
library(raster)
x <- lapply(ff,function(i) stack(rep(i,3)))
或者用terra
library(terra)
x <- lapply(ff,function(i) rast(rep(i,3)))
或者像这样
y <- lapply(ff,function(i) rep(rast(i),3))