Wycinanie szeregów czasowych
Wycinanie jest szczególnie przydatne w przypadku szeregów czasowych, ponieważ często zachodzi potrzeba filtrowania danych według zakresu dat. Dodaj kolumnę date jako indeks, a następnie użyj .loc[] do wybrania odpowiednich wierszy. Pamiętaj, aby daty podawać w formacie ISO 8601: "yyyy-mm-dd" dla roku, miesiąca i dnia; "yyyy-mm" dla roku i miesiąca; "yyyy" dla samego roku.
Jak pamiętasz z rozdziału 1, wiele warunków logicznych można łączyć operatorami takimi jak &. Aby zrobić to w jednej linii kodu, każdy warunek musisz otoczyć nawiasami ().
pandas jest załadowany jako pd, a temperatures (bez indeksu) jest dostępny.
To ćwiczenie jest częścią kursu
Manipulacja danymi z pandas
Instrukcje do ćwiczenia
- Używając warunków logicznych (nie
.isin()ani.loc[]) oraz pełnego formatu daty"yyyy-mm-dd", odfiltruj wiersze ztemperatures, w których kolumnadatenależy do lat 2010 i 2011, a następnie wyświetl wyniki. - Ustaw kolumnę
datejako indekstemperaturesi posortuj go. - Użyj
.loc[], aby wybrać ztemperatures_indwiersze z lat 2010 i 2011. - Użyj
.loc[], aby wybrać ztemperatures_indwiersze od August 2010 do February 2011.
Interaktywne ćwiczenie praktyczne
Spróbuj tego ćwiczenia, uzupełniając ten przykładowy kod.
# Use Boolean conditions to subset temperatures for rows in 2010 and 2011
temperatures_bool = ____[(____ >= ____) & (____ <= ____)]
print(temperatures_bool)
# Set date as the index and sort the index
temperatures_ind = temperatures.____.____
# Use .loc[] to subset temperatures_ind for rows in 2010 and 2011
print(____)
# Use .loc[] to subset temperatures_ind for rows from Aug 2010 to Feb 2011
print(____)