Comment convertir un objet en flotteur dans Pandas (avec exemples)
Vous pouvez utiliser l’une des méthodes suivantes pour convertir une colonne d’un DataFrame pandas d’objet en flottant :
Méthode 1 : utilisez astype()
df['column_name'] = df['column_name'].astype(float)
Méthode 2 : utilisez to_numeric()
df['column_name'] = pd.to_numeric(df['column_name'])
Les deux méthodes produisent le même résultat.
Les exemples suivants montrent comment utiliser chaque méthode avec le DataFrame pandas suivant :
import pandas as pd #create DataFrame df = pd.DataFrame({'team': ['A', 'B', 'C', 'D', 'E', 'F', 'G', 'H'], 'points': ['18', '22.2', '19.1', '14', '14', '11.5', '20', '28'], 'assists': [5, 7, 7, 9, 12, 9, 9, 4]}) #view DataFrame print(df) team points assists 0 A 18 5 1 B 22.2 7 2 C 19.1 7 3 D 14 9 4 E 14 12 5 F 11.5 9 6 G 20 9 7 H 28 4 #check data type of each column print(df.dtypes) team object points object assists int64 dtype: object
Méthode 1 : utilisez astype() pour convertir un objet en flotteur
Le code suivant montre comment utiliser la fonction astype() pour convertir la colonne de points du DataFrame d’un objet en flottant :
#convert points column from object to float
df['points'] = df['points'].astype(float)
#view updated DataFrame
print(df)
team points assists
0 A 18.0 5
1 B 22.2 7
2 C 19.1 7
3 D 14.0 9
4 E 14.0 12
5 F 11.5 9
6 G 20.0 9
7 H 28.0 4
#view updated data types
print(df.dtypes)
team object
points float64
assists int64
dtype: object
Notez que la colonne points a désormais un type de données float64 .
Méthode 2 : utilisez to_numeric() pour convertir un objet en flotteur
Le code suivant montre comment utiliser la fonction to_numeric() pour convertir la colonne de points du DataFrame d’un objet en flottant :
#convert points column from object to float
df['points'] = pd.to_numeric(df['points'], errors='coerce')
#view updated DataFrame
print(df)
team points assists
0 A 18.0 5
1 B 22.2 7
2 C 19.1 7
3 D 14.0 9
4 E 14.0 12
5 F 11.5 9
6 G 20.0 9
7 H 28.0 4
#view updated data types
print(df.dtypes)
team object
points float64
assists int64
dtype: object
Notez que la colonne points a désormais un type de données float64 .
Notez également que cette méthode produit exactement le même résultat que la méthode précédente.
Ressources additionnelles
Les didacticiels suivants expliquent comment effectuer d’autres tâches courantes dans les pandas :
Comment convertir des valeurs booléennes en valeurs entières dans Pandas
Comment convertir DateTime en chaîne dans Pandas
Comment convertir des colonnes en entiers dans Pandas