2017-08-30 10 views
3

Was ist das Pandas-Äquivalent dieses SQL-Codes?Python-Pandas - Wählen Sie Datenframe-Spalten aus, wobei

Select id, fname, lname from table where id = 123 

Ich weiß, dass dies das Äquivalent eines SQL ist, 'wo' Klausel in Pandas:

df[df['id']==123] 

Und wählt bestimmte Spalten:

df[['id','fname','lname']] 

Aber ich kann nicht verstehen heraus, wie man sie kombiniert. Alle Beispiele, die ich online gesehen habe, wählen alle Spalten mit Bedingungen aus. Ich möchte eine begrenzte Anzahl von Spalten mit einer oder mehreren Bedingungen auswählen.

+0

'df.loc'https: //pandas.pydata .org/pandas-docs/stable/erzeugt/pandas.DataFrame.loc.html – Wen

+1

'df.loc [df ['id'] == 123, ['id', 'fname', 'lname']]'? – Zero

Antwort

3

Verwenden SQL-like .query() Methode:

df.query("id == 123")[['id','fname','lname']] 

oder

df[['id','fname','lname']].query("id == 123") 

oder mehr "Pandaic":

df.loc[df['id'] == 123, ['id','fname','lname']] 
Verwandte Themen