Как преобразовать строки в числа с плавающей запятой в pandas
Вы можете использовать следующие методы для преобразования строки в плавающую в pandas:
Метод 1: преобразовать один столбец в число с плавающей запятой
#convert "assists" column from string to float df[' assists '] = df[' assists ']. astype (float)
Способ 2: преобразовать несколько столбцов в число с плавающей запятой
#convert both "assists" and "rebounds" from strings to floats df[[' assists ', ' rebounds ']] = df[[' assists ', ' rebounds ']]. astype (float)
Способ 3: преобразовать все столбцы в число с плавающей запятой
#convert all columns to float df = df. astype (float)
В следующих примерах показано, как использовать каждый метод на практике со следующим DataFrame pandas:
import numpy as np import pandas as pd #createDataFrame 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 float64 points assists object rebound object dtype:object
Пример 1. Преобразование одного столбца в число с плавающей запятой
Следующий синтаксис показывает, как преобразовать вспомогательный столбец из строки в число с плавающей запятой:
#convert "assists" from string to float df[' assists '] = df[' assists ']. astype (float) #view column data types df. dtypes float64 points assist float64 rebound object dtype:object
Пример 2. Преобразование нескольких столбцов в плавающие
Следующий синтаксис показывает, как преобразовать вспомогательные и возвращаемые столбцы из строк в числа с плавающей запятой:
#convert both "assists" and "rebounds" from strings to floats df[[' assists ', ' rebounds ']] = df[[' assists ', ' rebounds ']]. astype (float) #view column data types df. dtypes float64 points assist float64 rebounds float64 dtype:object
Пример 3. Преобразование всех столбцов в формат с плавающей запятой
Следующий синтаксис показывает, как преобразовать все столбцы в DataFrame в числа с плавающей запятой:
#convert all columns to float df = df. astype (float) #view column data types df. dtypes float64 points assist float64 rebounds float64 dtype:object
Бонус: конвертируйте строку в число с плавающей запятой и дополняйте значения NaN.
Следующий синтаксис показывает, как преобразовать вспомогательный столбец из строки в число с плавающей запятой и одновременно дополнить значения NaN нулями:
#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
Дополнительные ресурсы
В следующих руководствах объясняется, как выполнять другие распространенные задачи в pandas:
Pandas: как преобразовать объект в целое число
Pandas: как преобразовать числа с плавающей запятой в целые числа
Pandas: как преобразовать определенные столбцы в массив NumPy