Мне нужно добавить 1D массивы (координаты) в 2d массив, используя numpy
в Python 3.6.
Я могу сделать это со списками, используя append, как в первом примере ниже.
mastlist =[]
i=0
for i in range (10):
i=i+1
coor = []
xcoor = i
ycoor =i*2
coor.append(xcoor)
coor.append(ycoor)
mastlist.append(coor)
print(mastlist)
Но я хочу более производительный подход с использованием массивов numpy
.Когда я пытаюсь преобразовать подход списка в массив (второй пример),
import numpy as np
i=0
for i in range (10):
i=i+1
centroid =np.append(i,i*2)
masterarray=np.append([centroid],axis=0)
print(masterarray)
print(masterarray)
я получаю ошибку ниже.
Моя ошибка:
TypeError: append () отсутствует 1 обязательный позиционный аргумент: 'values'
Я бы ожидал массив, такой как:
[[1, 2], [2, 4], [3, 6], [4, 8], [5, 10], [6, 12], [7, 14], [8, 16], [9, 18], [10, 20]]
Я также возился с попытками использования extend
, vstack
и concatenate
.
Любой совет будет приветствоваться.