我想为下面的示例3D数组中的每个‘区域’生成统计数据。分区由下面提供的二维数组定义。如果3D数组中的第一个索引表示时间索引(另外两个索引表示空间坐标),我如何生成每个区域的平均值随时间变化的时间序列?最终结果将是长度为10的4次序列(因为有4个区域-0表示非活动区域)。
启动代码:
import numpy as np
# Create example 3d array
sampl = np.random.uniform(low=0.1, high=10, size=(10,6,6))
# Generate an example zone array
zn = np.array([
0,1,1,2,2,0,
1,1,1,2,2,2,
1,1,1,2,2,2,
3,3,3,4,4,4,
3,3,3,4,4,4,
0,0,3,4,0,0,
])
1条答案
按热度按时间hfyxw5xn1#
由于区域的大小不同,您的目标数据是锯齿状的,解决方案只能部分矢量化。如果保证这些区域的大小相同,这将会得到改善。