Remplacer les eléments d'un tableau
Bonjour,
Je vais vous exposer ma problème algorithmique ,S'il vous plait aider moi à le résoudre.
tab=np.array([1,1,1,0,1,1,0,1,0,0])
W=np.where(tab==1)
W est le tableau de positions d’élément "1" dans tab
moi,maintenant je veux sélectionner n éléments de W aléatoirement pour les remplacer par la suite de zeros dans tab
par exemple :je veux obtenir liste resu(n éléments de W sélectionnés aléatoirement )
resu=[1,5]
tab alors devient:
tab=[1,0,1,0,1,0,0,1,0,0]
voici mon code maintenant:
Code1:
Code:
1 2 3 4 5 6 7 8 9 10 11
|
i=0
N=500
resu=[]
while((len(W)>n)and (i<N)):
r=random.randin(0,10)
if (W[i]==r):
resu.append(i)
W.remove(W[i])
i=i+1 |
et pour les remplacer dans tab,j'écris:
Code2:
Code:
1 2 3 4 5 6
| for i,j in enumerate( tab):
k=0
while(k<len(resu)):
if i==a[k]:
tab[i]=0
k=k+1 |
Ma probléme est dans le code1,lorsque j'affiche resu ,je le trouve vide et W ne change pas
Merci d'avance pour votre temps.