Ответ 1
Просто передайте список np.array
:
a = np.array(a)
Вы также можете воспользоваться этой возможностью, чтобы установить dtype
, если по умолчанию это не то, что вы хотите.
a = np.array(a, dtype=...)
У меня есть 2D-список, похожий на
a = [[1, 2, 3], [4, 5, 6], [7, 8, 9]]
и я хочу преобразовать его в массив 2d numpy. Можем ли мы это сделать, не выделяя память, например
numpy.zeros((3,3))
а затем сохранить в нем значения?
Просто передайте список np.array
:
a = np.array(a)
Вы также можете воспользоваться этой возможностью, чтобы установить dtype
, если по умолчанию это не то, что вы хотите.
a = np.array(a, dtype=...)
Я использую большие наборы данных, экспортированные в файл python в форме
XVals1 = [.........]
XVals2 = [.........]
Каждый список имеет одинаковую длину. Я использую
>>> a1 = np.array(SV.XVals1)
>>> a2 = np.array(SV.XVals2)
Тогда
>>> A = np.matrix([a1,a2])
просто используйте следующий код
c = np.matrix([[1, 2, 3], [4, 5, 6], [7, 8, 9]])
matrix([[1, 2, 3],
[4, 5, 6],
[7, 8, 9]])
Затем он даст вам
вы можете проверить форму и размер матрицы, используя следующий код
c.shape
c.ndim
np.array()
является еще более мощным, чем то, что сказал unutbu выше.
Вы также можете использовать его для преобразования списка массивов np в массив с более высоким размером, следующий пример:
aArray=np.array([1,1,1])
bArray=np.array([2,2,2])
aList=[aArray, bArray]
xArray=np.array(aList)
xArray shape (2,3), это стандартный np-массив. Эта операция позволяет избежать программирования цикла.