Dans PANDAS, comment obtenir l'indice d'une valeur connue?
Si nous avons une valeur connue dans une colonne, comment pouvons-nous obtenir de son indice de valeur? Par exemple:
In [148]: a = pd.DataFrame(np.arange(10).reshape(5,2),columns=['c1','c2'])
In [149]: a
Out[149]:
c1 c2
0 0 1
1 2 3
2 4 5
........
Comme nous le savons, nous pouvons obtenir une valeur de l'indice correspondant, comme ceci.
In [151]: a.ix[0,1] In [152]: a.c2[0] In [154]: a.c2.ix[0] <-- use index
Out[151]: 1 Out[152]: 1 Out[154]: 1 <-- get value
Mais comment faire pour obtenir l'indice par la valeur?
source d'informationauteur user2407991
Vous devez vous connecter pour publier un commentaire.
Il pourrait y avoir plus d'une carte d'indice à votre valeur, il plus logique de renvoyer une liste:
À l'aide de l' .loc[] accesseur:
Pouvez également utiliser le get_loc() par la mise en " c1 " de l'indice. Cela ne changera pas l'original dataframe.
L'autre manière autour de l'utilisation de numpy.où() :
Pour obtenir l'indice par la valeur, il suffit d'ajouter .index[0] à la fin d'une requête. Pour revenir à l'index de la première ligne du résultat...
Donc, appliqué à votre dataframe:
Où la requête retourne plus d'une lignel'index supplémentaire des résultats peut être consulté par spécifier l'index, par exemple .index[n]