Filtrowanie na podstawie danych „wierszy” po utworzeniu tabeli przestawnej w pandach Pythona
Mam zestaw danych, które otrzymuję z bazy danych SQL i czytam w ramce danych pandy. Wynikowy df to około 250 milionów wierszy i rośnie codziennie. Dlatego chciałbym przestawić tabelę, aby dać mi znacznie mniejszy stół do pracy (kilka tysięcy wierszy).
Tabela wygląda mniej więcej tak, ale jest znacznie większa:
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
Chciałbym uczynić to znacznie mniejszym, ignorując kolumnę „kategorii” i uzyskując całkowitą liczbę wyświetleń według daty i elementu item_id.
Robię to:
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
Teraz wyobraź sobie, że jest to znacznie większy zakres danych, który trwa miesiącami i tysiącami item_id. Chciałbym wybrać łączną liczbę wyświetleń dla item_id = 2 i report_date między „2013-06-01” a „2013-06-10” lub coś podobnego.
Szukałem od kilku godzin prosto, ale nie widzę, jak wybrać i / lub odfiltrować wartości w sekcji „wiersze” (tj. Data_dokumentu i item_id). Mogę tylko filtrować / wybierać dane w sekcji „wartości” (np. Widoki). To pytanie jest podobne i na samym końcu pytający skomentował to samo pytanie, o które pytam, ale nigdy nie odpowiedział. Chciałem tylko spróbować i zwrócić na to uwagę.
Filtrowanie i wybieranie z tabel przestawnych wykonanych za pomocą pand python
Doceniam całą pomoc. Ta strona i społeczność są absolutnie bezcenne.