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

SciPy binned_statistic_2d返回3D统计结果是否为预期输出?

关于SciPy binned_statistic_2d() 输出维度异常的问题分析

场景回顾

  • 处理Xarray Dataset中的三个138元素向量:cloudcorrLTSw.LTS、cloudcorrLTSw.OMEGA_700作为分箱维度,cloudcorrLTSw.CLD_RHO作为待统计变量
  • 分箱设置:取LTS和OMEGA_700的每隔5个值作为分箱边界,28个边界对应27个分箱区间
  • 因数据稀疏含大量NaN,使用np.nanmean作为统计函数

异常输出原因

binned_statistic_2d()的设计逻辑是接受一维NumPy数组作为输入,正常返回形状为(nx, ny)的统计结果数组。你得到的138x27x27异常维度,本质是传入的Xarray变量未被正确转换为纯一维数组,保留了原Dataset的维度结构,导致函数误将额外维度纳入计算,最终生成带冗余维度的结果;而第一维全为NaN,是因为这些冗余维度上没有有效数据参与分箱统计。

验证结论

你切换到未构建Dataset的原始数据后得到合理结果,恰好印证了这一点:原始数据是纯NumPy一维数组,完全符合binned_statistic_2d()的输入要求,因此输出维度正确。

最终结论

这种带冗余维度的138x27x27输出不属于binned_statistic_2d()的预期正常输出,是输入数据格式(Xarray变量未正确扁平化)导致的异常结果。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.13 18:43:24