删除"时间"来自RasterBrick R的尺寸

时间:2016-09-08 22:04:29

标签: r time-series raster

鉴于以下内容:

library(raster)
r <- raster(ncol=10, nrow=10)
s <- stack(lapply(1:3, function(x) setValues(r, runif(ncell(r)))))
s <- setZ(s, as.Date('2000-1-1') + 0:2,name="time")
s
getZ(s)

如何删除&#34; time&#34;来自s

我想删除&#34; time&#34;是因为我在cropping RasterStack Ps类似的情况下收到错误:

cr <- crop(P, extent(Germany),snap="out")

NOTE: rgdal::checkCRSArgs: no proj_defs.dat in PROJ.4 shared files

Error in R_nc4_def_var_float: NetCDF: String match to name in use
Name of variable that the error occurred on: "time"
I.e., you are trying to add a variable with that name to the file, but it ALREADY has a variable with that name!
  [1] "----------------------"
[1] "Var:  time"
[1] "Ndims:  3"
[1] "Dimids: "
[1] 2 1 0
Error in ncvar_add(nc, vars[[ivar]], verbose = verbose, indefine = TRUE) :
  Error in ncvar_add, defining var time

如果&#34; time&#34;维度不是问题,这个错误的解决方案是什么?

感谢您对此的看法。

1 个答案:

答案 0 :(得分:0)

您可以尝试在 setZ 函数中设置不同的名称。裁剪栅格时,会创建一个名为“时间”的新变量,不能使用两个名称相同的变量创建新的 rasterbrick。

当我尝试导出裁剪后的栅格时遇到了同样的问题。我不得不将 de 'varname' 从“时间”更改为其他内容(例如“日期”)。