用于R的堆栈函数(光栅库)的参数

用于R的堆栈函数(光栅库)的参数,r,stack,R,Stack,我正在尝试从R中的光栅库中使用stack函数创建RasterStack对象 library(raster) 但是我对函数中使用的参数有疑问。让我展示一下我在做什么: ###set working directory setwd("myworkingdirectory") ###Upload variables v1 <- raster("variable1.tif") v2 <- raster("variable2.tif") v3 <- raster("variable3

我正在尝试从R中的光栅库中使用stack函数创建RasterStack对象

library(raster)
但是我对函数中使用的参数有疑问。让我展示一下我在做什么:

###set working directory
setwd("myworkingdirectory")

###Upload variables
v1 <- raster("variable1.tif")
v2 <- raster("variable2.tif")
v3 <- raster("variable3.tif")
v4 <- raster("variable4.tif")
我试图编写类似于以下代码的代码,希望能让流程正常工作,但事实并非如此:

var.stacked <- stack(num.vars)

Error in .local(.Object, ...) : 
  `myworkingdirectory\e1' does not exist in the file system,
and is not recognised as a supported dataset name.


Error in .rasterObjectFromFile(x, band = band, objecttype = "RasterLayer",  : 
  Cannot create a RasterLayer object from this file. (file does not exist)

var.stacked因为您正在将字符向量传递给
stack
,然后将其解释为当前工作目录中的文件名。相反,如果您已经在R中创建了光栅对象,则可以执行此操作

stack( mget( num.vars , env = .GlobalEnv ) )
mget
获取光栅对象名称的字符向量并返回光栅对象列表


堆叠
然后将列表中的光栅堆叠成一个
堆叠

,太棒了!非常感谢你,西蒙诺101@很高兴为您服务!
var.stacked <- stack(num.vars)

Error in .local(.Object, ...) : 
  `myworkingdirectory\e1' does not exist in the file system,
and is not recognised as a supported dataset name.


Error in .rasterObjectFromFile(x, band = band, objecttype = "RasterLayer",  : 
  Cannot create a RasterLayer object from this file. (file does not exist)
stack( mget( num.vars , env = .GlobalEnv ) )