从矩阵列表创建栅格
Creating rasters from a list of matrices
我想从以下列表中创建三个光栅。
y <- matrix(1:300,100,3)
n <- c(1,2,3)
rep = 200
valuematrix <- vector("list",ncol(y))
for (i in 1:ncol(y)) {
newmatrix <- replicate(rep,y[,i])
valuematrix[[i]] <- newmatrix
}
现在我有一个包含 3 个矩阵的列表,我想创建三个名为 raster1、raster2、raster3 的栅格(不过我没有做对)
library(sp)
library(raster)
for (i in 1:length(valuematrix)) {
newraster <- raster(valuematrix[[i]])
valum[[paste0("matrix", i)]] <- newraster
}
帮助如何更改最后一段代码将不胜感激。
我们可以在 'list' 中继续创建 raster
,如果需要,我们可以将列表元素命名为 setNames
lst <- setNames(lapply(valuematrix, raster), paste0('raster',1:3))
对于stack
ing等操作,可以用这个
stack(lst)
我想从以下列表中创建三个光栅。
y <- matrix(1:300,100,3)
n <- c(1,2,3)
rep = 200
valuematrix <- vector("list",ncol(y))
for (i in 1:ncol(y)) {
newmatrix <- replicate(rep,y[,i])
valuematrix[[i]] <- newmatrix
}
现在我有一个包含 3 个矩阵的列表,我想创建三个名为 raster1、raster2、raster3 的栅格(不过我没有做对)
library(sp)
library(raster)
for (i in 1:length(valuematrix)) {
newraster <- raster(valuematrix[[i]])
valum[[paste0("matrix", i)]] <- newraster
}
帮助如何更改最后一段代码将不胜感激。
我们可以在 'list' 中继续创建 raster
,如果需要,我们可以将列表元素命名为 setNames
lst <- setNames(lapply(valuematrix, raster), paste0('raster',1:3))
对于stack
ing等操作,可以用这个
stack(lst)