NetCDF4
позволяет указать одно измерение как переменное, чтобы он мог организовать расположение файла данных удобным способом. Вы можете добавлять данные только в конец файла. Любые другие изменения требуют перезаписи файла или, по крайней мере, больших фрагментов. Кроме того, многие данные NetCDF4 имеют естественное измерение «роста», например, пространственные фиксированные точки выборки, но со временем растут.
numpy
Массивы не имеют такой возможности и обычно не нуждаются в этом. Если вам нужно добавить данные в массив, вы используете concatenate
для создания нового массива, который содержит как старые данные, так и новые. Вернее, он объединяет все элементы без «старого» v «нового» различия. np.concatenate
составлен и, следовательно, достаточно быстр. Я считаю, что он действует, создавая новый пустой массив нужного размера и копируя данные с входов.
Существует np.append
, но это действительно только передний конец concatenate
. Для одноразового добавления к массиву это нормально, но новые пользователи часто злоупотребляют им, помещая его в цикл, добавляя элементы один за другим к массиву.
Общая информация numpy
Идиома для построения массива заключается в том, чтобы добавить фигуры в список и передать этот список np.array
в конце. Python list
имеет эффективный метод добавления. Такой список можно также передать np.concatenate
.
Другим распространенным подходом является инициализация достаточно большого пустого массива, а затем вставка подмассивов вдоль соответствующего измерения.
Создание массива поэтапно - это общий вопрос SO numpy.