преимущественно работает с многомерными (числовыми) массивами. Создание и использование массива dtype объекта требует некоторых специальных приемов.
отаю с большими массивами, представляющими сетку, каждый элемент является объектом Cell с атрибутами x, y.
Я не уверен, что наиболее эффективный способ инициализации массивов, моя базовая реализация:
# X,Y dimensions of grid:
Gx = 3000
Gy = 4000
# Array to create
A = numpy.ndarray(shape=(int(self.Gx),int(self.Gy)),dtype=object)
for y in range(0,int(self.Gy)):
for x in range (0,int(self.Gx)):
c = Cell(1,x,y,1)
A.itemset((x,y),c)
Очевидно, что это не эффективно для больших массивов. Я знаю, как создать большой массив объектов и использовать векторизацию для одновременного доступа к ним. Чего я не могу понять, так это как применить массив индексов (через A.indices) в одной функции, которая не требует итерации по всему массиву.
У каждого объекта Cell есть функции setX и setY. Могу ли я передать функции массив индексов для установки значения y каждой ячейки в одной строке?