Mickael Profeta | 1 Jun 2005 13:30

Re: Utilisation de numarray.sometrue()

On Wed, Jun 01, 2005 at 01:05:52PM +0200, Frédéric Mantegazza wrote:
Salut,

> Je cherche à faire la différence entre 2 NumArray et je veux tester si cette 
> différence est nulle ou pas. On ne peut pas faire un test directement sur 
> un NumArray : il faut passer par sometrue(). Or, si le NumArray est de 
> dimension supérieur à 1, sometrue() renvoie encore un NumArray, de 
> dimension plus faible. Et donc le test ne peut toujours pas être fait.
> 
en effet, sometrue est en fait un synonyme de reduce avec la methode
logical_or, donc il te remvoies un numarray de dimension n-1 ou il a
fait l'operation logique sur chaque axe (que tu peux lui donner en
argument)

mais il existe les fonctions all et any qui doivent faire ce que tu veux
(il transforme l'array en dimension 1 si il ne l'est pas, puis fait
l'operation logique, and pour all et or pour any)

donc pour toi

any(a) devrait te donner ce que tu veux (est-ce qu'il y a au moins un
element non-nul dans le tableau a)

Mike


Gmane