# Pandas mean(): come calcolare facilmente la media

La funzione `DataFrame.mean()` in [Pandas per Python](https://www.ionos.it/digitalguide/siti-web/programmazione-del-sito-web/pandas-di-python/) serve a **calcolare il valore medio** in uno o più assi di un DataFrame. La funzione `mean()` di Pandas è fondamentale per l’analisi di dati numerici e permette di ottenere informazioni preziose sulla loro distribuzione e sui valori medi.

## La sintassi di `DataFrame.mean()` in Pandas

La funzione `mean()` di Pandas accetta **fino a tre parametri** e presenta una semplice sintassi di base:

```python
DataFrame.mean(axis=None, skipna=True, numeric_only=None)
```

### Parametri applicabili

Grazie a diversi parametri è possibile personalizzare il funzionamento di `DataFrame.mean()` in Pandas a seconda della tua applicazione specifica.

<table>
  <thead>
    <tr>
      <th><strong>Parametro</strong></th>
      <th><strong>Descrizione</strong></th>
      <th><strong>Valore predefinito</strong></th>
    </tr>
  </thead>
  <tbody>
    <tr>
      <td>`axis`</td>
      <td>Stabilisce se eseguire il calcolo sulle righe (`axis=0`) o sulle colonne (`axis=1`)</td>
      <td>`0`</td>
    </tr>
    <tr>
      <td>`skipna`</td>
      <td>Se `True`, ignora i valori NaN</td>
      <td>`True`</td>
    </tr>
    <tr>
      <td>`numeric_only`</td>
      <td>Se `True`, considera solo i tipi di dati numerici per il calcolo</td>
      <td>`False`</td>
    </tr>
  </tbody>
</table>

## Utilizzo della funzione `mean()` in Pandas

È possibile applicare la funzione `DataFrame.mean()` di Pandas in diversi modi.

### Calcolo dei valori medi per ciascuna colonna

Negli esempi di codice seguenti prendiamo in considerazione un [DataFrame di Pandas](https://www.ionos.it/digitalguide/siti-web/programmazione-del-sito-web/dataframe-in-pandas-per-python/) con i seguenti dati di esempio:

```python
import pandas as pd
data = {
    'A': [1, 2, 3, 4],
    'B': [4, 5, 6, 7],
    'C': [7, 8, 9, 10]
}
df = pd.DataFrame(data)
print(df)
```

Il DataFrame risultante è il seguente:

```none
A  B    C
0  1  4    7
1  2  5    8
2  3  6    9
3  4  7  10
```

Per calcolare il valore medio di ciascuna colonna è possibile utilizzare la funzione `mean()` di Pandas con il parametro standard `axis=0`:

```python
column_means = df.mean()
print(column_means)
```

In questo modo vengono calcolati i valori medi di ogni colonna (A, B e C) dividendo la somma degli elementi per il numero di elementi nella colonna. Il risultato è la seguente serie di Pandas:

```none
A    2.5
B    5.5
C    8.5
dtype: float64
```

### Calcolo dei valori medi per ciascuna riga

Per calcolare il valore medio di ciascuna riga non devi far altro che utilizzare il parametro `axis` impostato su 1:

```python
row_means = df.mean(axis=1)
print(row_means)
```

Le medie di ogni riga vengono quindi calcolate con `mean()` in Pandas dividendo la somma degli elementi per il numero di elementi in ciascuna riga. La chiamata della funzione dà il seguente risultato:

```none
0    4.0
1    5.0
2    6.0
3    7.0
dtype: float64
```

### Ignorare i valori NaN

L’esempio seguente utilizza un altro DataFrame che contiene alcuni valori NaN:

```python
import pandas as pd
import numpy as np
data = {
    'A': [1, 2, np.nan, 4],
    'B': [4, np.nan, 6, 7],
    'C': [7, 8, 9, np.nan]
}
df = pd.DataFrame(data)
print(df)
```

Il codice precedente dà il seguente DataFrame come risultato:

```none
A    B    C
0  1.0  4.0  7.0
1  2.0  NaN  8.0
2  NaN  6.0  9.0
3  4.0  7.0  NaN
```

Per calcolare la media considerando i valori NaN si utilizza il parametro `skipna`. Il valore predefinito è `True`, ossia i valori NaN vengono ignorati automaticamente dalla funzione `mean()` in Pandas. Impostando invece `skipna=False`, anche la media di una qualsiasi colonna contenente almeno un valore NaN sarebbe NaN.

```python
mean_with_nan = df.mean()
print(mean_with_nan)
```

La chiamata della funzione `mean()` in Pandas dà questo risultato:

```none
A    2.333333
B    5.666667
C    8.000000
dtype: float64
```


This is a markdown version of: [https://www.ionos.it/digitalguide/siti-web/programmazione-del-sito-web/dataframe-mean-in-pandas-per-python/](https://www.ionos.it/digitalguide/siti-web/programmazione-del-sito-web/dataframe-mean-in-pandas-per-python/) for AI/LLM consumption.