2017-02-02 2 views
1

Ich habe eine Pandas DataFrame und ich bin auf der Suche nach dem minimalen Wert drin.Pandas Datenframe loc

print(df.loc[df['Price'].idxmin()]) 

Es funktioniert, und ich kann die ganze ‚line‘ drucken, Dies ist das Ergebnis:

Country    Switzerland 
City      Zurich 
Airport     Zurich 
Carrier   Vueling Airlines 
Type      Direct 
Date   2017-09-05T00:00:00 
Price      12360 
AirportId     ZRH 
Name: 97, dtype: object 

Process finished with exit code 0 

Wie kann ich nur die AirportId Spalt zum Beispiel drucken?

Vielen Dank!

Antwort

2

Durch die Filterung dagegen:

print(df.loc[df['Price'].idxmin()]['Airport']) 

Wenn Sie Daten in dieser Zelle schreiben wollen, halten loc mit:

df.loc[df['Price'].idxmin(),'Airport'] 
+0

technisch verkettete Indizierung, 'print (df.loc [df ['Price']. Idxmin(), 'Flughafen']) wäre besser IMO +1 trotzdem – EdChum

+0

Sie sind fantastisch! :) Vielen Dank! – solarenqu

+0

@EdChum faire genug, um explizite Variation für R/W-Fall zu erhalten. bearbeitet, danke! – Boud

0

lassen Sie uns sagen, dass dies Ihre Datenrahmen:

your_df = pd.DataFrame(data={'Airport':['x','y','z'], 'type': ['A','B','C'], 
     'price':[5450, 5450, 15998]}) 

können Sie auf die erste Spalte wie folgt zugreifen:

+0

Vielen Dank! – solarenqu