Numpy " où " sur la chaîne

Je voudrais utiliser le numpy.où la fonction sur un tableau de chaînes. Cependant, je suis échoué à le faire. Quelqu'un peut-il m'aider à comprendre cela?

Par exemple, lorsque j'utilise numpy.where sur l'exemple suivant, j'obtiens une erreur:

import numpy as np

A = ['apple', 'orange', 'apple', 'banana']

arr_index = np.where(A == 'apple',1,0)

Je reçois le texte suivant:

>>> arr_index
array(0)
>>> print A[arr_index]
>>> apple

Cependant, je voudrais savoir les indices dans le tableau de chaîne, A où la chaîne 'apple' matchs. Au-dessus de la chaîne de ce qui se passe à 0 et 2. Cependant, la np.where ne renvoie 0 et pas 2.

Alors, comment dois-je faire numpy.where travaux sur cordes? Merci à l'avance.

OriginalL'auteur Rohit | 2013-05-20