Soit 2 matrices M et N de même taille, pour copier une ligne i de M dans N on peut utiliser la syntaxe suivante:
N[i,:] = M[i,:]
Tableau de même taille
Exemple avec i = 2:
>>> import numpy as np>>> M = np.array([[2,7,1],[3,3,1],[5,4,2],[0,1,8]])>>> Marray([[2, 7, 1],[3, 3, 1],[5, 4, 2],[0, 1, 8]])>>> M.shape(4, 3)>>> N = np.zeros((4,3))>>> Narray([[0., 0., 0.],[0., 0., 0.],[0., 0., 0.],[0., 0., 0.]])>>> N[2,:] = M[2,:]>>> Narray([[0., 0., 0.],[0., 0., 0.],[5., 4., 2.],[0., 0., 0.]])
Tableau de tailles différentes (N colonnes > M colonnes)
>>> import numpy as np>>> M = np.array([[2,7,1],[3,3,1],[5,4,2],[0,1,8]])>>> N = np.zeros((6,4))>>> M_dim_2 = M.shape[1]>>> N_dim_2 = N.shape[1]>>> M_dim_23>>> N_dim_24>>> if N_dim_2 > M_dim_2:... N[2,:M_dim_2] = M[2,:]...>>> Narray([[ 0., 0., 0., 0.],[ 0., 0., 0., 0.],[ 5., 4., 2., 0.],[ 0., 0., 0., 0.],[ 0., 0., 0., 0.],[ 0., 0., 0., 0.]])
Tableau de tailles différentes (N colonnes < M colonnes)
>>> N = np.zeros((6,2))>>> N_dim_2 = N.shape[1]>>> N_dim_22>>> if N_dim_2 < M_dim_2:... N[2,:] = M[2,:N_dim_2]...>>> Narray([[ 0., 0.],[ 0., 0.],[ 5., 4.],[ 0., 0.],[ 0., 0.],[ 0., 0.]])
Références
| Lien | Source |
|---|---|
| Copy numpy array into part of another array | stackoverflow |
| How to copy data from a numpy array to another | stackoverflow |
| Copy numpy array into part of another array | stackoverflow |
