Метод astype() для DataFrame в Pandas

PandasPandasBeginner
Практиковаться сейчас

💡 Этот учебник переведен с английского с помощью ИИ. Чтобы просмотреть оригинал, вы можете перейти на английский оригинал

Введение

В этом практическом занятии мы научимся использовать метод astype() в библиотеке Pandas для Python. Метод astype() позволяет нам преобразовать тип данных в Pandas DataFrame в заданный тип. Мы можем преобразовать типы данных всех столбцов или конкретных столбцов в DataFrame.

Советы по работе с ВМ

После запуска ВМ нажмите в левом верхнем углу, чтобы переключиться на вкладку Notebook и приступить к практике в Jupyter Notebook.

Иногда вам может потребоваться подождать несколько секунд, пока Jupyter Notebook загрузится полностью. Валидация операций не может быть автоматизирована из-за ограничений в Jupyter Notebook.

Если вы столкнетесь с проблемами во время обучения, не стесняйтесь обращаться к Labby. Оставьте отзыв после занятия, и мы оперативно решим проблему для вас.


Skills Graph

%%%%{init: {'theme':'neutral'}}%%%% flowchart RL python(("Python")) -.-> python/BasicConceptsGroup(["Basic Concepts"]) pandas(("Pandas")) -.-> pandas/DataSelectionGroup(["Data Selection"]) pandas(("Pandas")) -.-> pandas/DataManipulationGroup(["Data Manipulation"]) python(("Python")) -.-> python/PythonStandardLibraryGroup(["Python Standard Library"]) python(("Python")) -.-> python/DataScienceandMachineLearningGroup(["Data Science and Machine Learning"]) python/BasicConceptsGroup -.-> python/type_conversion("Type Conversion") pandas/DataSelectionGroup -.-> pandas/select_columns("Select Columns") pandas/DataManipulationGroup -.-> pandas/change_data_types("Changing Data Types") python/PythonStandardLibraryGroup -.-> python/data_collections("Data Collections") python/DataScienceandMachineLearningGroup -.-> python/data_analysis("Data Analysis") subgraph Lab Skills python/type_conversion -.-> lab-68587{{"Метод astype() для DataFrame в Pandas"}} pandas/select_columns -.-> lab-68587{{"Метод astype() для DataFrame в Pandas"}} pandas/change_data_types -.-> lab-68587{{"Метод astype() для DataFrame в Pandas"}} python/data_collections -.-> lab-68587{{"Метод astype() для DataFrame в Pandas"}} python/data_analysis -.-> lab-68587{{"Метод astype() для DataFrame в Pandas"}} end

Преобразование типов данных всех столбцов DataFrame

Мы можем использовать метод astype(), чтобы преобразовать типы данных всех столбцов в DataFrame в заданный тип. Вот пример:

import pandas as pd

## Создаем DataFrame
data = {'A':[1,2,3,4,5],'B':[6,7,8,9,10]}
df = pd.DataFrame(data)

print("----До преобразования типа данных DataFrame-----")
print(df.dtypes)

## Преобразуем типы данных всех столбцов в int32
df = df.astype('int32')

print("----После преобразования типа данных DataFrame-----")
print(df.dtypes)

Результат:

----До преобразования типа данных DataFrame-----
A int64
B int64
dtype: object

----После преобразования типа данных DataFrame-----
A int32
B int32
dtype: object

В этом примере мы создаем DataFrame с двумя столбцами A и B. До преобразования типов данных оба столбца имеют тип int64. После применения метода astype() с аргументом 'int32' оба столбца преобразуются в тип int32.

Преобразование типа данных конкретного столбца DataFrame

Мы также можем использовать метод astype(), чтобы преобразовать тип данных конкретного столбца в DataFrame. Вот пример:

import pandas as pd

## Создаем DataFrame
data = {'A':[1,2,3,4,5],'B':[6,7,8,9,10]}
df = pd.DataFrame(data)

print("----До преобразования типа данных DataFrame-----")
print(df.dtypes)

## Преобразуем тип данных столбца 'A' в int32
df['A'] = df['A'].astype('int32')

print("----После преобразования типа данных одного столбца DataFrame-----")
print(df.dtypes)

Результат:

----До преобразования типа данных DataFrame-----
A int64
B int64
dtype: object

----После преобразования типа данных одного столбца DataFrame-----
A int32
B int64
dtype: object

В этом примере мы создаем DataFrame с двумя столбцами A и B. До преобразования типа данных столбец A имеет тип int64, а столбец B имеет тип int64. После применения метода astype() с аргументом 'int32' к столбцу A только тип данных столбца A преобразуется в int32, в то время как тип данных столбца B остается int64.

Проверка преобразованного DataFrame

После преобразования типов данных в DataFrame мы можем проверить обновленный DataFrame, чтобы убедиться, что преобразования были успешными. Вот пример:

import pandas as pd

## Создаем DataFrame
data = {'A':[1,2,3,4,5],'B':[6,7,8,9,10]}
df = pd.DataFrame(data)

print("----После преобразования типа данных одного столбца DataFrame-----")
df['B'] = df['B'].astype('float')
print(df.dtypes)
print("-----DataFrame после преобразования в типы данных с плавающей точкой-----")
print(df)

Результат:

----После преобразования типа данных одного столбца DataFrame-----
A int64
B float64
dtype: object

-----DataFrame после преобразования в типы данных с плавающей точкой-----
   A     B
0  1   6.0
1  2   7.0
2  3   8.0
3  4   9.0
4  5  10.0

В этом примере мы создаем DataFrame с двумя столбцами A и B. После применения метода astype() с аргументом 'float' к столбцу B тип данных столбца B преобразуется в float64. Затем мы выводим типы данных DataFrame, чтобы подтвердить изменения, и выводим сам DataFrame, чтобы увидеть обновленные значения.

Резюме

В этом практическом занятии мы научились использовать метод astype() в Pandas для преобразования типов данных в DataFrame. Мы увидели, как преобразовать типы данных всех столбцов и конкретных столбцов с использованием метода astype(), а также проверили полученный DataFrame после преобразований. Метод astype() полезен для манипулирования и преобразования данных в Pandas DataFrame.