Comment convertir des chaînes en flotteur dans Pandas



Vous pouvez utiliser les méthodes suivantes pour convertir une chaîne en float dans pandas :

Méthode 1 : convertir une seule colonne en flottant

#convert "assists" column from string to float
df['assists'] = df['assists'].astype(float)

Méthode 2 : convertir plusieurs colonnes en flottant

#convert both "assists" and "rebounds" from strings to floats
df[['assists', 'rebounds']] = df[['assists', 'rebounds']].astype(float)

Méthode 3 : convertir toutes les colonnes en flottant

#convert all columns to float
df = df.astype(float)

Les exemples suivants montrent comment utiliser chaque méthode en pratique avec le DataFrame pandas suivant :

import numpy as np
import pandas as pd

#create DataFrame
df = pd.DataFrame({'points': [np.nan, 12, 15, 14, 19],
                   'assists': ['5', np.nan, '7', '9', '12'],
                   'rebounds': ['11', '8', '10', '6', '6']})  

#view DataFrame
df

 	points	assists	rebounds
0	NaN	5.0	11
1	12.0	NaN	8
2	15.0	7.0	10
3	14.0	9.0	6
4	19.0	12.0	6

#view column data types
df.dtypes

points      float64
assists      object
rebounds     object
dtype: object

Exemple 1 : convertir une seule colonne en flottant

La syntaxe suivante montre comment convertir la colonne d’assistance d’une chaîne en flottant :

#convert "assists" from string to float
df['assists'] = df['assists'].astype(float)

#view column data types
df.dtypes

points      float64
assists     float64
rebounds     object
dtype: object

Exemple 2 : convertir plusieurs colonnes en flottant

La syntaxe suivante montre comment convertir les colonnes d’assistance et de rebond de chaînes en flottants :

#convert both "assists" and "rebounds" from strings to floats
df[['assists', 'rebounds']] = df[['assists', 'rebounds']].astype(float)

#view column data types
df.dtypes

points      float64
assists     float64
rebounds    float64
dtype: object

Exemple 3 : convertir toutes les colonnes en flottant

La syntaxe suivante montre comment convertir toutes les colonnes du DataFrame en flottants :

#convert all columns to float
df = df.astype(float)

#view column data types
df.dtypes

points      float64
assists     float64
rebounds    float64
dtype: object

Bonus : convertissez la chaîne en flottant et remplissez les valeurs NaN

La syntaxe suivante montre comment convertir la colonne d’assistance de chaîne en flottant et remplir simultanément les valeurs NaN avec des zéros :

#convert "assists" from string to float and fill in NaN values with zeros
df['assists'] = df['assists'].astype(float).fillna(0)

#view DataFrame
df

        points	assists	rebounds
0	NaN	5.0	11
1	12.0	0.0	8
2	15.0	7.0	10
3	14.0	9.0	6
4	19.0	12.0	6

Ressources additionnelles

Les didacticiels suivants expliquent comment effectuer d’autres tâches courantes dans les pandas :

Pandas : Comment convertir un objet en entier
Pandas : Comment convertir des flottants en nombres entiers
Pandas : Comment convertir des colonnes spécifiques en tableau NumPy

Ajouter un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *