Auswahl von Daten mit .query()

Daten mit pandas verknüpfen

Aaren Stubberfield

Instructor

Die Methode .query()

.query('SOME SELECTION STATEMENT')
  • Akzeptiert einen Input-String
    • Input-String wird verwendet, um zu bestimmen, welche Zeilen zurückgegeben werden
    • Input-String ähnelt Teil nach der WHERE-Klausel in SQL-Anweisung
      • Keine SQL-Kenntnisse nötig
Daten mit pandas verknüpfen

Abfrage einer einzigen Bedingung

Beispiel-Tabelle: stocks

  date        disney      nike      
0 2019-07-01  143.009995  86.029999 
1 2019-08-01  137.259995  84.5      
2 2019-09-01  130.320007  93.919998 
3 2019-10-01  129.919998  89.550003 
4 2019-11-01  151.580002  93.489998 
5 2019-12-01  144.630005  101.309998
6 2020-01-01  138.309998  96.300003 
7 2020-02-01  117.650002  89.379997 
8 2020-03-01  96.599998   82.739998 
9 2020-04-01  99.580002   84.629997 
stocks.query('nike >= 90')
  date        disney      nike      
2 2019-09-01  130.320007  93.919998 
4 2019-11-01  151.580002  93.489998 
5 2019-12-01  144.630005  101.309998
6 2020-01-01  138.309998  96.300003
Daten mit pandas verknüpfen

Abfrage mehrerer Bedingungen: „and“, „or“

Beispiel-Tabelle: stocks

  date        disney      nike      
0 2019-07-01  143.009995  86.029999 
1 2019-08-01  137.259995  84.5      
2 2019-09-01  130.320007  93.919998 
3 2019-10-01  129.919998  89.550003 
4 2019-11-01  151.580002  93.489998 
5 2019-12-01  144.630005  101.309998
6 2020-01-01  138.309998  96.300003 
7 2020-02-01  117.650002  89.379997 
8 2020-03-01  96.599998   82.739998 
9 2020-04-01  99.580002   84.629997 
stocks.query('nike > 90 and disney < 140')
  date        disney      nike     
2 2019-09-01  130.320007  93.919998
6 2020-01-01  138.309998  96.300003
stocks.query('nike > 96 or disney < 98')
   date        disney      nike      
5  2019-12-01  144.630005  101.309998
6  2020-01-01  138.309998  96.300003 
28 020-03-01  96.599998   82.739998
Daten mit pandas verknüpfen

Aktualisierter Datensatz

Beispiel-Tabelle: stocks_long

  date        stock   close     
0 2019-07-01  disney  143.009995
1 2019-08-01  disney  137.259995
2 2019-09-01  disney  130.320007
3 2019-10-01  disney  129.919998
4 2019-11-01  disney  151.580002
5 2019-07-01  nike    86.029999 
6 2019-08-01  nike    84.5      
7 2019-09-01  nike    93.919998 
8 2019-10-01  nike    89.550003 
9 2019-11-01  nike    93.489998 
Daten mit pandas verknüpfen

Mit .query() Text auswählen

stocks_long.query('stock=="disney" or (stock=="nike" and close < 90)')
  date        stock   close     
0 2019-07-01  disney  143.009995
1 2019-08-01  disney  137.259995
2 2019-09-01  disney  130.320007
3 2019-10-01  disney  129.919998
4 2019-11-01  disney  151.580002
5 2019-07-01  nike    86.029999 
6 2019-08-01  nike    84.5      
8 2019-10-01  nike    89.550003
Daten mit pandas verknüpfen

Lass uns üben!

Daten mit pandas verknüpfen

Preparing Video For Download...