# Pandas mean() : la fonction pour calculer les valeurs moyennes

La fonction [Python Pandas](https://www.ionos.fr/digitalguide/sites-internet/developpement-web/python-pandas/) DataFrame.mean() sert à **calculer la valeur moyenne** sur un ou plusieurs axes d’un DataFrame. Pandas mean() est essentielle pour l’analyse de données, car elle fournit des informations précieuses sur leur distribution et leurs moyennes.

## La syntaxe de la fonction `DataFrame.mean()` de Pandas

La fonction Pandas `mean()` accepte **jusqu’à trois paramètres** et suit une syntaxe de base simple :

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

### Quels sont les paramètres pertinents ?

À l’aide de différents paramètres, le comportement de `DataFrame.mean()` de Pandas peut être adapté à votre cas d’utilisation personnel.

<table>
  <thead>
    <tr>
      <th><strong>Paramètres</strong></th>
      <th><strong>Description</strong></th>
      <th><strong>Valeur par défaut</strong></th>
    </tr>
  </thead>
  <tbody>
    <tr>
      <td>axis</td>
      <td>Détermine si le calcul doit être effectué sur des lignes (axis=0) ou des colonnes (axis=1)</td>
      <td>0</td>
    </tr>
    <tr>
      <td>skipna</td>
      <td>Si True, les valeurs NaN sont ignorées</td>
      <td>True</td>
    </tr>
    <tr>
      <td>numeric_only</td>
      <td>Si True, seuls les types de données numériques sont pris en compte dans le calcul</td>
      <td>False</td>
    </tr>
  </tbody>
</table>

## Application de la fonction mean() de Pandas

La fonction `DataFrame.mean()` de Pandas peut être appliquée de différentes manières.

### Calculer les moyennes pour chaque colonne

Dans les exemples de code ci-dessous, on considère un [DataFrame Pandas](https://www.ionos.fr/digitalguide/sites-internet/developpement-web/python-pandas-dataframe/) avec les exemples de données suivants :

```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)
```

Le DataFrame résultant est le suivant :

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

Pour calculer la valeur moyenne de chaque colonne, on peut utiliser la fonction Pandas mean() avec le paramètre par défaut axis=0 :

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

De cette manière, les moyennes de chaque colonne (A, B et C) sont calculées en divisant la somme des éléments par le nombre d’éléments dans chaque colonne. Le résultat est la Serie Pandas suivante :

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

### Calculer les moyennes pour chaque ligne

Si l’on souhaite plutôt calculer la moyenne pour chaque ligne, il suffit de mettre le paramètre `axis` à 1 :

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

Les moyennes de chaque ligne sont calculées en utilisant la fonction mean() de Pandas, en divisant la somme des éléments par le nombre d’éléments dans chaque ligne. L’appel de la fonction donne la sortie suivante :

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

### Ignorer les valeurs NaN

Dans l’exemple suivant, nous considérons un autre DataFrame qui contient quelques valeurs NaN (« *Not a Number* ») :

```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)
```

Le résultat du code ci-dessus se trouve dans le DataFrame suivant :

```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
```

Pour calculer la moyenne en tenant compte des valeurs NaN, on utilise le paramètre skipna. La valeur par défaut est True, ce qui signifie que les valeurs NaN sont automatiquement ignorées par la fonction mean(). Si skipna=False, la moyenne pour chaque colonne contenant au moins une valeur NaN serait également NaN.

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

L’appel de fonction de Pandas mean() permet alors d’obtenir :

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


This is a markdown version of: [https://www.ionos.fr/digitalguide/sites-internet/developpement-web/python-pandas-dataframe-mean/](https://www.ionos.fr/digitalguide/sites-internet/developpement-web/python-pandas-dataframe-mean/) for AI/LLM consumption.