充分利用字典中的多维数组

时间:2019-01-14 01:41:34

标签: python arrays numpy

我有一个字典,其中包含50天的栅格化(纬度/经度)降水数据多维数组。每个数组的大小分别为(88,40)。如何计算所有50个数组的均值,并以(88,40)的相同维数获得结果?也就是说,在整个50天内都需要在相同的纬度/经度点上进行平均计算。

如果我在以下代码中给带有字典名称的字典名称,它将工作几天:

np.nanmean((arraysDict['ppt_subset0'], arraysDict['ppt_subset1']), axis =0)

这些是我的字典arraysDict的键 ['ppt_subset0',  'ppt_subset1',  ...  'ppt_subset49']

但是我不知道如何在整个50天之内做到这一点,除了在所有字典的代码中都键入50次“ arraysDict ['ppt_subset0']”。

2 个答案:

答案 0 :(得分:1)

您可以将其转换为一个巨大的3维numpy数组,然后计算均值:

arr = np.array(list(arraysDict.values()))
mean = arr.mean(axes=0)

请注意,arr不一定按顺序包含子数组(或天)。

答案 1 :(得分:0)

您可以使用.values()获取字典的所有值:

np.nanmean(list(arraysDict.values()), axis=0)