Menu
Coddy logo textTech

Grupowanie i agregowanie danych

Lekcja 15 z 19 w kursie Analiza danych z pandas w Coddy.

Grupowanie i agregowanie danych ma kluczowe znaczenie podczas pracy z dużymi zbiorami danych, ponieważ pomaga upraszczać i podsumowywać dane, dzięki czemu łatwiej je zrozumieć i analizować.

W poprzedniej lekcji obliczyliśmy statystyki dla określonej grupy, ale obliczanie statystyk dla wszystkich grup może być trudne bez dodatkowych narzędzi. W tym celu mamy metodę .groupby():

df.groupby('column_name')

Zwróci ona obiekt GroupBy, który grupuje wiersze ramki danych według wartości column_name. Możesz zastosować funkcje agregujące do tego obiektu GroupBy, aby wykonywać obliczenia w obrębie tych grup.

Po pogrupowaniu danych możemy użyć kilku funkcji agregujących, aby podsumować dane, na przykład:

df.groupby('column_name').sum()
df.groupby('column_name').min()
df.groupby('column_name').max()

Zwróci to wartości sum, min i max wszystkich pozostałych kolumn numerycznych w oryginalnej ramce danych, z podziałem według column_name.

Teraz możesz wyodrębnić konkretną kolumnę, którą analizujesz:

df.groupby('column_name').sum()['other_column']
challenge icon

Wyzwanie

Łatwy

Plik CSV visits.csv zawiera informacje o liczbie wizyt w danej lokalizacji w określonym czasie.

Oto pierwsze 5 wierszy pliku:

location_id,visits,timestamp
8,1771,27498
9,4187,79919
0,4959,54228
6,7721,41588

Utwórz słownik z następującymi kluczami: min, max, mean, std, sum i median, a następnie podaj series odpowiadające statystykom kolumny visits dla każdego identyfikatora lokalizacji.

Spróbuj swoich sił

# pandas as pd jest już zaimportowany
df = pd.read_csv("./visits.csv")
# Napisz swój kod poniżej
sum_visits = df.groupby("location_id").sum()["visits"]

res = {
    "min": # uzupełnij
    "max": # uzupełnij
    "mean": # uzupełnij
    "std": # uzupełnij
    "median": # uzupełnij
    "sum": sum_visits
}
print(res)

Wszystkie lekcje w sekcji Analiza danych z pandas

Poćwicz samodzielnie: Kompilator Python online