2017-09-12 3 views
0

Ich habe Datenrahmen mit A, B, C als Spalten. Ich habe einen Index auf sie gesetztZugriff auf eine Dataframe-Spalte mit Index

df.set_index('A') 

Jetzt mit Ich möchte zum Filtern von Zeilen eine Bedingung Aussage wie

df[df.loc['A'] == '10001'] 

Das gibt mir die folgende Fehlermeldung mit:

KeyError: 'the label [A] is not in the [index]' 

Wie kann ich eine Bedingung auf die Spalte anwenden, die ich als Index gesetzt habe?

+0

Verwenden 'df.index' erhalten mit filtern können? – miradulo

+0

df [df ['A'] == '10001'] ? – JavaHead1560

+0

'df = df.set_index ('A')' – Wen

Antwort

0

Betrachten Sie diese df

 val 
A 
10001 5 
10002 6 
10003 3 

Sie die Zeilen

df[df.index == '10001'] 

Sie

 val 
A 
10001 5 
0

Sie haben 'inplace = True'

df.set_index('A', inplace=True) 

sonst angeben es bleibt nicht.