Як перетворити об’єкт на float у pandas (з прикладами)


Ви можете використати один із наведених нижче методів, щоб перетворити стовпець pandas DataFrame з об’єкта на float:

Спосіб 1: Використовуйте astype()

 df[' column_name '] = df[' column_name ']. astype (float)

Спосіб 2: Використовуйте to_numeric()

 df[' column_name '] = pd. to_numeric (df[' column_name '])

Обидва методи дають однаковий результат.

У наведених нижче прикладах показано, як використовувати кожен метод із такими pandas DataFrame:

 import pandas as pd

#createDataFrame
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 to 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:28 a.m. 4

#check data type of each column
print ( df.dtypes )

team object
points object
assists int64
dtype:object

Спосіб 1. Використовуйте astype(), щоб перетворити об’єкт на float

У наведеному нижче коді показано, як за допомогою функції astype() перетворити стовпець точки DataFrame об’єкта на float:

 #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
3D 14.0 9
4 E 14.0 12
5 F 11.5 9
6G 20.0 9
7 A.M. 28.0 4

#view updated data types
print ( df.dtypes )

team object
float64 points
assists int64
dtype:object

Зверніть увагу, що стовпець точок тепер має тип даних float64 .

Спосіб 2. Використовуйте to_numeric(), щоб перетворити об’єкт на Float

У наведеному нижче коді показано, як використовувати функцію to_numeric() для перетворення стовпця точки DataFrame об’єкта на float:

 #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
3D 14.0 9
4 E 14.0 12
5 F 11.5 9
6G 20.0 9
7 A.M. 28.0 4

#view updated data types
print ( df.dtypes )

team object
float64 points
assists int64
dtype:object

Зверніть увагу, що стовпець точок тепер має тип даних float64 .

Також зауважте, що цей метод дає точно такий же результат, як і попередній.

Додаткові ресурси

У наступних посібниках пояснюється, як виконувати інші типові завдання в pandas:

Як перетворити логічні значення в цілі значення в Pandas
Як перетворити DateTime на рядок у Pandas
Як перетворити стовпці на цілі числа в Pandas

Додати коментар

Ваша e-mail адреса не оприлюднюватиметься. Обов’язкові поля позначені *