Python Pandas: Holen Sie sich den Index der Zeilen, in denen die Spalte einen bestimmten Wert entspricht.

Du kannst die Methode .loc verwenden, um das DataFrame zu filtern und eine boolesche Maske zu erhalten, und dann die Eigenschaft .index verwenden, um den Index der Zeilen zu erhalten, die einen bestimmten Wert entsprechen. Hier ist ein Beispiel:

import pandas as pd

# Erstelle ein Beispieldatensatz
df = pd.DataFrame({'A': [1, 2, 3, 4, 5],
                   'B': [2, 3, 4, 5, 6],
                   'C': [3, 4, 5, 6, 7]},
                  index=[100, 101, 102, 103, 104])

# Suche die Zeilen, in denen die Spalte 'B' den Wert 3 hat
match = df.loc[df['B'] == 3].index
print(match)

Das wird den Index der Zeilen ausgeben, in denen die Spalte 'B' den Wert 3 hat:

Int64Index([101], dtype='int64')

Du kannst den gleichen Ansatz verwenden, um auf mehrere Spalten und mehrere Bedingungen zu filtern. Beispiel:

df.loc[(df['A']==1) & (df['B']==2)].index

Es wird die Zeilen-Index zurückgeben die A = 1 und B = 2 hat