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:
et pour les remplacer dans tab,j'écris:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
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
Code2:
Ma probléme est dans le code1,lorsque j'affiche resu ,je le trouve vide et W ne change pas
Code : Sélectionner tout - Visualiser dans une fenêtre à part
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
Merci d'avance pour votre temps.
Partager