Filtern basierend auf den "Zeilen" -Daten nach dem Erstellen einer Pivot-Tabelle in Python-Pandas
Ich habe eine Reihe von Daten, die ich aus einer SQL-Datenbank erhalte und in einen Pandas-Datenrahmen einlese. Der resultierende df ist ungefähr 250M Reihen und wächst täglich. Aus diesem Grund möchte ich die Tabelle schwenken, um eine viel kleinere Tabelle zu erhalten, mit der ich arbeiten kann (einige tausend Zeilen).
Der Tisch sieht ungefähr so aus, ist aber viel größer:
data
report_date item_id views category
0 2013-06-01 2 3 a
1 2013-06-01 2 2 b
2 2013-06-01 5 16 a
3 2013-06-01 2 4 c
4 2013-06-01 2 5 d
Ich würde das gerne viel kleiner machen, indem ich die Spalte "Kategorie" ignoriere und nur eine Gesamtsumme der Aufrufe nach Datum und item_id bekomme.
Ich mache das:
pivot = data.pivot_table(values=['views'], rows=['report_date','item_id'], aggfunc='sum')
views
report_date item_id
2013-06-01 2 14
2013-06-01 5 16
Stellen Sie sich nun vor, dies ist viel größer, da der Datenbereich über Monate und Tausende von item_ids reicht. Ich möchte die Gesamtansichten für item_id = 2 und report_date zwischen '2013-06-01' und '2013-06-10' oder so ähnlich auswählen.
Ich habe mehrere Stunden hintereinander gesucht, kann jedoch nicht feststellen, wie Werte in meinem Abschnitt "Zeilen" (d. H. Report_date und item_id) ausgewählt und / oder herausgefiltert werden. Ich kann nur Daten im Bereich "Werte" filtern / auswählen (Beispiel: Ansichten). Diese Frage ist ähnlich und am Ende hat der Fragesteller dieselbe Frage kommentiert, die ich gestellt habe, aber sie wurde nie beantwortet. Ich wollte nur versuchen, die Aufmerksamkeit darauf zu lenken.
Filtern und Auswählen aus Pivot-Tabellen, die mit Python-Pandas erstellt wurden
Ich habe die Hilfe sehr geschätzt. Diese Seite und die Community waren von unschätzbarem Wert.