我有一个 netcdf 文件,其中包含一个浮点数组(21600、43200)。我不想将整个数组读入 RAM,因为它太大了,所以我使用netCDF4库中的Dataset对象来读取数组。
我想使用 300-400 坐标的两个 1D numpy 数组(x_coords,y_coords)来计算这个数组的子集的平均值。
我认为我不能使用基本索引,因为我拥有的坐标不是连续的。我目前正在做的只是将数组直接输入到对象中,如下所示:
ncdf_data = Dataset(file, 'r')
mean = np.mean(ncdf_data.variables['q'][x_coords, y_coords])
上面的代码对我来说太长了(大约 3-4 秒,具体取决于我使用的坐标),我想以某种方式加快速度。有没有一种pythonic方法可以用来直接从这样的子集中计算平均值而不触发花哨的索引?