You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在多图层Raster对象中逐像元去除时间序列异常值?

高分辨率NetCDF逐像元时间序列去异常值并计算均值

我有一个极高空间分辨率的NetCDF文件,参数如下:

dimensions : 2160, 4320, 9331200, 172  (nrow, ncol, ncell, nlayers)
resolution : 0.0833333, 0.0833333  (x, y)
extent     : -180, 179.9998, -90, 89.99993  (xmin, xmax, ymin, ymax)
crs        : +proj=longlat +datum=WGS84 +no_defs 

我的最终目标是计算全部172个图层(即时间维度)的均值。在此之前,我希望逐像元对时间序列去除异常值,例如使用公式:x ± 2.5 * std(x),其中x为每个像元的时间序列数据。

我尝试将Raster对象转换为数据框,但由于分辨率过高,处理速度极慢。我也尝试过使用raster包中的clamp和reclassify函数,但这些函数使用的是针对整个Raster对象的固定阈值:

x <- clamp(x, lower = 0, upper = 2.5)

我需要的是基于每个像元时间序列(即上述动态上下限)去除异常值的函数。

是否可以直接在Raster格式下实现?无论是使用Raster包还是Terra包?

内容的提问来源于stack exchange,提问作者Francesco Giardina

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.28 19:52:09