У меня большой объем данных в файлах NetCDF4, и я пытаюсь написать сценарий для динамического разделения этих данных на максимально возможное количество в памяти, выполнить вычисления и сохранить результаты, а затем перейти кследующий кусок
Пример того, что я пытаюсь сделать.Скажем, у меня есть такой массив:
import numpy as np
arr = np.random.randint(0, 10, (100, 15, 51)) # Call these x, y, and z coordinates
И я хочу читать одновременно только десять координат x, например:
placeholder = 0
for i in range(10, 101, 10):
tmp_array = arr[placeholder:i, :, :]
# Do calculations here and save results to file or database
placeholder += 10
Есть ли какая-то встроеннаяв методе для этого?В этом простом примере это работает довольно хорошо, но по мере того, как все усложняется, мне кажется, что я могу справиться со всем этим самостоятельно.Я знаю о Dask, но в этой ситуации мне это не поможет, потому что я не выполняю операции с массивами с данными.Хотя Даск мог бы быть мне полезен, если бы у него были методы, чтобы справиться с этим тоже.