Python/numpy: как увеличить массив на одну строку без использования дополнительной памяти?
Есть большой массив numpy, очень большой - еле помещается в оперативную память.
Есть-ли возможность быстро добавить к нему новую строку, не используя дополнительную память и не копируя переменную? Именно добавить к существующему массиву, не выделяя при этом дополнительную память под его копию. Преобразовывать во что-то нет возможности, нужен именно numpy.array.
Спасибо.
Нельзя. В этом и состоит отличие массива от списка. Список легче растянуть, чем массив, так как массив хранит все свои данные одним блоком, а список хранит одним блоком только ссылки на свои элементы.
Нужно либо выделять массив с запасом, либо сбрасывать данные на диск для последующего чтения в numpy-массив.
Спасибо. Значит все плохо и придется пересчитывать данные дважды - первый раз для определения размера массива, второй - для его заполнения: диск не выход - запись долгая.