Exemple de comment ajouter un nouvel axe pour transformer une matrice de forme (n,) en (n, 1) avec numpy en python:
Créer une matrice avec numpy
Créons d'abord une matrice avec numpy:
import numpy as np
A = np.arange(10)
donne
[0 1 2 3 4 5 6 7 8 9]
Si on test la forme de la matrice on obtient:
A.shape
donne ici
(10,)
Ajouter un nouvel axe avec numpy.newaxis
Pour ajouter un nouvel axe, une solution est d'utiliser numpy.newaxis:
A = A[:,np.newaxis]
Ensuite, si nous vérifions la forme de la matrice A:
A.shape
on obtient une matrice de dimension
(10, 1)
et print(A) donne
[[0]
[1]
[2]
[3]
[4]
[5]
[6]
[7]
[8]
[9]]
Note: il est également possible de faire
A = A[np.newaxis,:]
qui donne une matrice de dimension
(1,10,)
et A
[[[0]
[1]
[2]
[3]
[4]
[5]
[6]
[7]
[8]
[9]]]
En utilisant reshape
Une autre solution est d'utiliser reshape
A = A.reshape(10,1)
print(A.shape)
donne
(10, 1)