Strings in Float umwandeln - Pandas

Von Fabian
Kategorie: Python
Lesezeit: 2 Minuten

Oft sind Sie daran interessiert, eine oder mehrere Zeichenfolgenspalten in einem Pandas-DataFrame in Float-Spalten zu konvertieren. Glücklicherweise ist dies mit der Funktion astype() einfach zu bewerkstelligen.

Dieses Tutorial zeigt mehrere Beispiele, wie Sie diese Funktion in der Praxis mit dem folgenden DataFrame verwenden können:

import numpy as np
import pandas as pd

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

#Dataframe anzeigen
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

#Spaltendatentypen anzeigen
df.dtypes

points      float64
assists      object
rebounds     object
dtype: object

Beispiel 1: Konvertieren einer einzelnen Spalte in Float

Die folgende Syntax zeigt, wie die Spalte „assists“ von einem String in einen Float umgewandelt wird:

#"assists" von string in float konvertieren
df['assists'] = df['assists'].astype(float)

#Spaltendatentypen anzeigen
df.dtypes

points      float64
assists     float64
rebounds     object
dtype: object

Beispiel 2: Mehrere Spalten in Float konvertieren

Die folgende Syntax zeigt, wie Sie sowohl die Spalten „assists“ als auch „rebounds“ von Strings in Floats umwandeln:

#konvertieren Sie sowohl "Assists" als auch "Rebounds" von Strings in Floats
df[['assists', 'rebounds']] = df[['assists', 'rebounds']].astype(float)

#Spaltendatentypen anzeigen
df.dtypes

points      float64
assists     float64
rebounds    float64
dtype: object

Beispiel 3: Alle Spalten in Float umwandeln

Die folgende Syntax zeigt, wie Sie alle Spalten im DataFrame in Floats konvertieren:

#konvertieren Sie alle Spalten in Float
df = df.astype(float)

#Spaltendatentypen anzeigen
df.dtypes

points      float64
assists     float64
rebounds    float64
dtype: object

Beispiel 4: Konvertieren von String in Float und Füllen von NaN-Werten

Die folgende Syntax zeigt, wie Sie die Spalte „assists“ von Strings in Floats umwandeln und gleichzeitig die NaN-Werte mit Nullen füllen:

#konvertiere "assists" von string in float und fülle NaN-Werte mit Nullen aus
df['assists'] = df['assists'].astype(float).fillna(0)

#Dataframe anzeigen
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

Zusätzliche Ressourcen

Pandas astype()-Dokumentation
Pandas fillna() Dokumentation

Statistik: Der Weg zur Datenanalyse

* Amazon Affiliate Link


Das könnte Sie auch interessieren: