Bonjour =E0 tous
et oui j'ai une nouvelle difficult=E9 avec les tableaux de numpy
je cherche =E0 faire 2 choses sur un tableau 2D du style :
[[0.0,0.0],
[1.0,0.5],
[3.0,4.5],
[2.0,8.0],
[2.5,6.5]]
ce tableau contient des coordonn=E9es X,Y
je souhaite:
1 - le tri=E9 suivant l'une des composantes, soit X, soit Y, =E7a parait
simple mais je n'y arrive pas, numpy me "m=E9lange" toujours mes
coordonn=E9es avec la fonctions sort (les X ne correspondent plus aux Y)
2 - faire un d=E9calage c'est =E0 dire, faire passer la 1ere valeur en
2e, la 2e en 3e, etc et la derni=E8re au d=E9but (par valeur je veux
parler de couple X,Y).
"2, 8" y est trois fois (plus une ambiguïté en fin/début de ligne 0 & 1). Que dois répondre la solution que tu cherches ?
@+
Michel Claveau
PS : je ne donnerai pas de solution, ne pratiquant pas numpy
d'où vient ton exemple ??? perso je n'ai jamais donné ça chez moi il s'agit de couple de flotant X, Y 0.0 , 2.0 <= attention à la virgule et aux points ;)
On 4 mai, 10:26, "Méta-MCI" <enleverlesX.X...@XmclaveauX.com> wrote:
Bonjour !
Juste une question (complémentaire ?).
Dans cet exemple :
"2, 8" y est trois fois (plus une ambiguïté en fin/début de ligne 0 & 1).
Que dois répondre la solution que tu cherches ?
@+
Michel Claveau
PS : je ne donnerai pas de solution, ne pratiquant pas numpy
d'où vient ton exemple ???
perso je n'ai jamais donné ça
chez moi il s'agit de couple de flotant X, Y
0.0 , 2.0 <= attention à la virgule et aux points ;)
"2, 8" y est trois fois (plus une ambiguïté en fin/début de ligne 0 & 1). Que dois répondre la solution que tu cherches ?
@+
Michel Claveau
PS : je ne donnerai pas de solution, ne pratiquant pas numpy
d'où vient ton exemple ??? perso je n'ai jamais donné ça chez moi il s'agit de couple de flotant X, Y 0.0 , 2.0 <= attention à la virgule et aux points ;)
Sébastien Ramage
On 4 mai, 10:41, fred wrote:
À voir...
Pour info, s'il n'y a pas de gourou scipy ici (elby ? ;-), tu obtiendras certainement une réponse sur la liste de scipy...
--http://scipy.org/FredericPetit
je vais tenter de ce coté là alors merci encore
Seb
On 4 mai, 10:41, fred <fredantis...@free.fr> wrote:
À voir...
Pour info, s'il n'y a pas de gourou scipy ici (elby ? ;-),
tu obtiendras certainement une réponse sur la liste de scipy...
ça ne ressemble plus à un tableau de points, ça...
Si ; dans un espace à quatre dimensions...
-- @-salutations
Michel Claveau
vml
On 4 mai, 10:13, Sébastien Ramage wrote:
On 4 mai, 09:08, fred wrote:
la doc de numpy est horrible je ne trouve rien et les exemples sont loin d'être clair$
bref encore une petite question comment on trouve l'index d'une valeur dans un tableau? (à l'image de la méthode "index" de l'objet "list" ) c'est à dire je connais mon couple X,Y et je veux savoir où il e st dans le tableau In [6]: print a[1,0,2]
14
Euhhh.., je me demande après coup si ça répond bien à la questi on... ;-)
--http://scipy.org/FredericPetit
sans vouloir te vexer je ne comprends rien à ton exemple je reformule ma question avec un exemple ça sera peut-être plus clair j'ai un tableau 2D
et je voudrais trouver la position du point [2.0,8.0] par exemple donc je voudrais un truc du genre : find_index(M, [2.0,8.0])
et que la fonction me retourne 3
ca serait pas un truc du genre
f=[2.,8.]
(M==f).nonzero()
ou bien
i=where(M==f)
?
On 4 mai, 10:13, Sébastien Ramage <sebastien.ram...@gmail.com> wrote:
On 4 mai, 09:08, fred <fredantis...@free.fr> wrote:
la doc de numpy est horrible je ne trouve rien et les exemples sont
loin d'être clair$
bref encore une petite question
comment on trouve l'index d'une valeur dans un tableau? (à l'image de
la méthode "index" de l'objet "list" )
c'est à dire je connais mon couple X,Y et je veux savoir où il e st
dans le tableau
In [6]: print a[1,0,2]
14
Euhhh.., je me demande après coup si ça répond bien à la questi on... ;-)
--http://scipy.org/FredericPetit
sans vouloir te vexer je ne comprends rien à ton exemple
je reformule ma question avec un exemple ça sera peut-être plus clair
j'ai un tableau 2D
la doc de numpy est horrible je ne trouve rien et les exemples sont loin d'être clair$
bref encore une petite question comment on trouve l'index d'une valeur dans un tableau? (à l'image de la méthode "index" de l'objet "list" ) c'est à dire je connais mon couple X,Y et je veux savoir où il e st dans le tableau In [6]: print a[1,0,2]
14
Euhhh.., je me demande après coup si ça répond bien à la questi on... ;-)
--http://scipy.org/FredericPetit
sans vouloir te vexer je ne comprends rien à ton exemple je reformule ma question avec un exemple ça sera peut-être plus clair j'ai un tableau 2D
j'ai trouvé un truc qui marche mais loin d'être direct
M = array([[0. ,0. ], [1. ,0.5],
[3. ,4.5], [2. ,8. ], [2. ,6. ], [ 2.5,6.5]])
t = M == [2.0,8.0] t.prod(1).nonzero()[0][0] 3
JBB
Réponse à moi même:
actuellement je fais ça :
def find_index(tab, point): #cherche un point dans le tableau et retourne sa position #retourne -1 si le point n'est pas dans le tableau i = 0 for p in tab: if p.tolist() == list(point): break i += 1 if i == len(tab): i = -1 return i
mais je ne trouve pas ça formidable, il y a certainement une façon plus rapide de le faire
Je vois pas trop comment tu pourrais faire autrement!
Et que fait tu si ton point apparait 2 fois? tu retourne le 1er ou le 2eme?
La bonne question n'est pas comment je retrouve l'index? mais ai je vraiment besoin de retrouver l'index? sinon si ta recherche sequentielle ne te satisfait pas, il ne te reste plus qu'à utiliser un dictionnaire en plus ou a chaque point tu associe l'index dans le tableau.
Réponse à moi même:
actuellement je fais ça :
def find_index(tab, point):
#cherche un point dans le tableau et retourne sa position
#retourne -1 si le point n'est pas dans le tableau
i = 0
for p in tab:
if p.tolist() == list(point):
break
i += 1
if i == len(tab):
i = -1
return i
mais je ne trouve pas ça formidable, il y a certainement une façon
plus rapide de le faire
Je vois pas trop comment tu pourrais faire autrement!
Et que fait tu si ton point apparait 2 fois? tu retourne le 1er ou le 2eme?
La bonne question n'est pas comment je retrouve l'index? mais ai je vraiment besoin de retrouver l'index?
sinon si ta recherche sequentielle ne te satisfait pas,
il ne te reste plus qu'à utiliser un dictionnaire en plus ou a chaque point tu associe l'index dans le tableau.
def find_index(tab, point): #cherche un point dans le tableau et retourne sa position #retourne -1 si le point n'est pas dans le tableau i = 0 for p in tab: if p.tolist() == list(point): break i += 1 if i == len(tab): i = -1 return i
mais je ne trouve pas ça formidable, il y a certainement une façon plus rapide de le faire
Je vois pas trop comment tu pourrais faire autrement!
Et que fait tu si ton point apparait 2 fois? tu retourne le 1er ou le 2eme?
La bonne question n'est pas comment je retrouve l'index? mais ai je vraiment besoin de retrouver l'index? sinon si ta recherche sequentielle ne te satisfait pas, il ne te reste plus qu'à utiliser un dictionnaire en plus ou a chaque point tu associe l'index dans le tableau.