【问题标题】:r raster Can I combine two raster bricks directly?r raster 我可以直接组合两个光栅砖吗?
【发布时间】:2019-12-04 23:31:07
【问题描述】:

我想组合两个(或更多)光栅积木。这是我想做的一个例子

library(raster)

r <- raster(ncol=40, nrow=20)
r[] <- rnorm(n=ncell(r))

b1 <- brick(x=c(r, r*2, r))
b2 <- brick(x=c(r, r*3, r))

b <- brick(b1, b2)

此示例返回以下错误。

Error in (function (cl, name, valueClass)  :    assignment of an
object of class “RasterBrick” is not valid for @‘nlayers’ in an object
of class “.MultipleRasterData”; is(value, "integer") is not TRUE

如果我如下创建堆栈而不是砖块

b1 <- stack(x=c(r, r*2, r))
b2 <- stack(x=c(r, r*3, r))

b <- brick(b1, b2)

我收到以下错误消息

Error in if (values) { : argument is not interpretable as logical

【问题讨论】:

    标签: r r-raster


    【解决方案1】:

    您需要stack 将具有相同范围和分辨率的多个栅格、堆栈或砖块组合成一个多层对象。然后你可以转换成brick

    s <- stack(b1, b2)
    nlayers(s)
    #[1] 6
    b <- brick(s)
    print(b)
    
    class       : RasterBrick 
    dimensions  : 20, 40, 800, 6  (nrow, ncol, ncell, nlayers)
    resolution  : 9, 9  (x, y)
    extent      : -180, 180, -90, 90  (xmin, xmax, ymin, ymax)
    coord. ref. : +proj=longlat +datum=WGS84 +ellps=WGS84 +towgs84=0,0,0 
    data source : in memory
    names       :  layer.1.1,  layer.2.1,  layer.3.1,  layer.1.2,  layer.2.2,  layer.3.2 
    min values  :  -3.604523,  -7.209047,  -3.604523,  -3.604523, -10.813570,  -3.604523 
    max values  :   3.441872,   6.883743,   3.441872,   3.441872,  10.325615,   3.441872
    

    更多信息请见https://www.rspatial.org/raster/spatial/4-rasterdata.html#rasterstack-and-rasterbrick

    【讨论】:

    • 我一直在做响应的第一部分,即s=stack(b1, b2)。第二部分 b &lt;- brick(s) 适用于小堆栈。但是,当我尝试使用一些真实(而且非常大)的数据来执行此操作时,需要很长时间。由于转换为砖块的主要目的是加速其他一些计算,我希望将所有东西都变成砖块并将它们组合起来。这似乎是不可能的。
    • 如果您使用writeRasterstack 写入文件,然后以brick 的形式读回,这将只指向那个文件怎么办?不太确定……只是一个想法。
    • 为了加快速度,请使用 ClusterR,它可以让您将更多内核用于光栅功能!
    • stackApply 还可以帮助您加快处理速度rdocumentation.org/packages/raster/versions/3.0-7/topics/…
    猜你喜欢
    • 1970-01-01
    • 2020-03-22
    • 2015-07-06
    • 2023-03-17
    • 1970-01-01
    • 2016-12-25
    • 1970-01-01
    • 1970-01-01
    • 2017-07-20
    相关资源
    最近更新 更多