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