Как преобразовать числа с плавающей запятой в целые числа в pandas
Вы можете использовать следующий синтаксис для преобразования столбца в DataFrame pandas из числа с плавающей запятой в целое число:
df[' float_column '] = df[' float_column ']. astype (int)
Следующие примеры показывают, как использовать этот синтаксис на практике.
Пример 1. Преобразование столбца из числа с плавающей запятой в целое число.
Предположим, у нас есть следующий DataFrame pandas:
import pandas as pd #createDataFrame df = pd. DataFrame ({' player ': ['A', 'B', 'C', 'D', 'E'], ' points ': [25.2, 27.0, 14.5, 17.6, 20.7], ' assists ': [5.1, 7.7, 10.3, 8.6, 9.5]}) #view data types for each column df. dtypes player object float64 points assist float64 dtype:object
Мы видим, что столбцы «очки» и «ассисты» имеют тип данных с плавающей запятой.
Следующий код показывает, как преобразовать столбец точек с плавающей запятой в целое число:
#convert 'points' column to integer
df[' points '] = df[' points ']. astype (int)
#view data types of each column
df. dtypes
player object
int32 dots
assist float64
dtype:object
Мы видим, что столбец точек теперь является целым числом, а все остальные столбцы остались неизменными.
Пример 2. Преобразование нескольких столбцов в целые числа
Следующий код показывает, как преобразовать несколько столбцов DataFrame из числа с плавающей запятой в целое число:
import pandas as pd #createDataFrame df = pd. DataFrame ({' player ': ['A', 'B', 'C', 'D', 'E'], ' points ': [25.2, 27.0, 14.5, 17.6, 20.7], ' assists ': [5.1, 7.7, 10.3, 8.6, 9.5]}) #convert 'points' and 'assists' columns to integer df[[' points ', ' assists ']] = df[[' points ', ' assists ']]. astype (int) #view data types for each column df. dtypes player object int32 dots assists int32 dtype:object
Мы видим, что столбцы «очки» и «ассисты» были преобразованы из чисел с плавающей запятой в целые числа.
Дополнительные ресурсы
В следующих руководствах объясняется, как выполнять другие распространенные преобразования в Python:
Как преобразовать столбцы Pandas DataFrame в строки
Как преобразовать временную метку в дату/время в Pandas
Как преобразовать DateTime в дату в Pandas