Changer les dimensions d'une matrice avec python et numpy

Published: 26 avril 2017

DMCA.com Protection Status

Pour changer les dimensions d'une matrice il existe la fonction numpy numpy.reshape, exemple:

>>> import numpy as np
>>> a = np.array(([1,2,3],[4,5,6]))
>>> a
array([[1, 2, 3],
       [4, 5, 6]])
>>> a.shape
(2, 3)
>>> b = a.reshape(3,2)
>>> b
array([[1, 2],
       [3, 4],
       [5, 6]])
>>> b.shape
(3, 2)

Note: attention les dimensions doivent être conservées: 23 = 32 !

Pour transformer une matrice en 1d, il existe la fonction numpy ravel:

>>> a.ravel()
array([1, 2, 3, 4, 5, 6])

Références

Liens Site
numpy.reshape doc scipy
Reshape an array in NumPy stackoverflow
numpy.ravel scipy doc