Bonjour,

J'ai un tableau numpy, disons par exemple:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
a=np.array([[0,1,2,4],[4,3,6,8],[9,5,7,2],[8,9,8,5],[0,5,3,8]])
Je veux rajouter une 5e colonne qui ait pour valeurs soit la col 1 si celle-ci est inférieure à la col 0, soit la colonne 0 si la condition n'est pas respectée.
Avec des booléens, si la condition est respectée, on a : qui retourne
Code : Sélectionner tout - Visualiser dans une fenêtre à part
array([False,  True, False,  True], dtype=bool)
e sais insérer une 5e col :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
np.hstack((a,np.zeros((5,1))))
Question: comment faire pour remplacer les valeurs de la 5e col pour parvenir à :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
array([[0, 1, 2, 4, 0],
       [4, 3, 6, 8, 3],
       [9, 5, 7, 2, 5],
       [8, 9, 8, 5, 8],
       [0, 5, 3, 8, 0]])
De préférence en évitant les boucles (comme
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
for i in range(5):
	a[i][4]=a[i][1] if a[i][1]<a[i][0] else a[i][0]
D'avance, merci
Dominique