提问人:Shunrei 提问时间:11/5/2023 最后编辑:Shunrei 更新时间:11/6/2023 访问量:37
在 R 中选择一个网格单元格
Select one grid cell in R
问:
是否可以仅从光栅砖中选择一个网格单元,并为该特定网格单元获取一个光栅砖?
我必须在光栅砖上执行一项计算成本非常高的任务,并且需要在一个网格单元格上测试脚本。
我不喜欢提取函数的结果。
这种格式的示例:
> prec_stack
class : RasterBrick
dimensions : 2, 2, 4, 366 (nrow, ncol, ncell, nlayers)
resolution : 0.25, 0.25 (x, y)
extent : -6, -5.5, 40.5, 41 (xmin, xmax, ymin, ymax)
crs : +proj=longlat +datum=WGS84 +no_defs
source : memory
names : X2020.01.01, X2020.01.02, X2020.01.03, X2020.01.04, X2020.01.05, X2020.01.06, X2020.01.07, X2020.01.08, X2020.01.09, X2020.01.10, X2020.01.11, X2020.01.12, X2020.01.13, X2020.01.14, X2020.01.15, ...
min values : 1.665335e-13, 1.665335e-13, 6.631103e-04, 1.665335e-13, 1.665335e-13, 1.665335e-13, 1.665335e-13, 1.665335e-13, 3.436539e-01, 4.741280e-03, 1.665335e-13, 1.665335e-13, 8.816075e-04, 1.909899e-01, 7.564928e-01, ...
max values : 8.832944e-04, 1.665335e-13, 4.644275e-03, 1.665335e-13, 2.981438e-03, 1.665335e-13, 1.665335e-13, 1.665335e-13, 6.721702e-01, 1.005035e-02, 2.429699e-03, 1.665335e-13, 2.098144e-03, 6.070088e-01, 1.907934e+00, ...
答:
0赞
Eduardo Moreira
11/6/2023
#1
是的,这非常简单。
您只需要使用括号,定义所选单元格的行和列,然后添加参数,如下所示:drop=FALSE
SelectedBrick <- YourBrick[CellRow, CellCol, drop=FALSE]
结果将是一个光栅砖 (SelectedBrick),其中包含所有图层的选定单元格。
评论
0赞
Shunrei
11/6/2023
谢谢!但是如何知道特定网格单元格的行和列呢?
0赞
Eduardo Moreira
11/9/2023
代码对你有帮助吗?如果是这样,请推荐答案。关于本评论中的第二个问题,如果您不介意的话,答案将取决于您定义目标像素的标准。它可以是中心像素、角像素、具有特定值的像素或特定坐标。对于这些情况中的每一种,答案都会有所不同。我建议您打开一个新问题,指定您需要什么。
评论