Menu
CoddyTech

Raggruppare i dati

Fa parte della sezione Dati e grafici del percorso Machine Learning di Coddy. Lezione 43 di 60.

Quale città vende di più? Una sola media calcolata su tutte le righe non può dirlo. Dividi le righe in gruppi, uno per città, poi calcola la media di ciascun gruppo:

Sei righe di negozi divise in tre gruppi per città, Lione, Nizza e Parigi, poi viene calcolata la media di ciascun gruppo: Lione 23.0, Nizza 18.0, Parigi 38.0

Una riga fa entrambe le cose:

shops = pd.DataFrame({
    "city": ["Lyon", "Paris", "Lyon", "Nice", "Paris", "Lyon"],
    "sales": [20, 35, 26, 18, 41, 23],
})
means = shops.groupby("city")["sales"].mean()
print(means)

Questo stampa:

city
Lyon     23.0
Nice     18.0
Paris    38.0
Name: sales, dtype: float64

groupby("city") crea i gruppi, ["sales"] seleziona la colonna, .mean() calcola la media di ciascun gruppo. Funzionano anche .sum(), .min() e .max().

Per classificare le pile, ordinalo: means.sort_values(ascending=False).index[0] è Paris, il più venduto.

challenge icon

Sfida

Medio

Un club di corsa registra ogni corsa in runs.csv: runner, distance_km, minutes e climb_m. Il codice iniziale legge una delle colonne numeriche in column.

  1. Stampa la media di quella colonna per ogni corridore.
  2. Poi indica il corridore con la media più alta, come nell'ultima riga qui sotto.

Per un club con due corridori e distance_km:

runner
Ana    6.1
Bo     8.4
Name: distance_km, dtype: float64
Top runner: Bo with 8.4

Provalo tu

import pandas as pd

runs = pd.read_csv("runs.csv")
column = input()

# Scrivi il tuo codice qui sotto
quiz iconMettiti alla prova

Questa lezione include un breve quiz. Inizia la lezione per rispondere e tenere traccia dei tuoi progressi.

Tutte le lezioni di Dati e grafici

Esercitati da solo: Compilatore Python online