Pandas: как проверить dtype для всех столбцов в DataFrame


Вы можете использовать следующие методы для проверки типа данных ( dtype ) для столбцов в кадре данных pandas:

Способ 1: проверить dtype одного столбца

df.column_name.dtype

Способ 2: проверить dtype всех столбцов

df.dtypes

Способ 3: проверьте, какие столбцы имеют определенный тип dtype

df.dtypes [df.dtypes == 'int64']

В следующих примерах показано, как использовать каждый метод со следующими пандами DataFrame:

import pandas as pd

#create DataFrame
df = pd.DataFrame({'team': ['A', 'B', 'C', 'D', 'E', 'F'],
 'points': [18, 22, 19, 14, 14, 11],
 'assists': [5, 7, 7, 9, 12, 9],
 'all_star': [True, False, False, True, True, True]})

#view DataFrame
print(df)

 team points assists all_star
0 A 18 5 True
1 B 22 7 False
2 C 19 7 False
3 D 14 9 True
4 E 14 12 True
5 F 11 9 True

Пример 1: проверка dtype одного столбца

Мы можем использовать следующий синтаксис, чтобы проверить тип данных только столбца точек в DataFrame:

#check dtype of points column
df.points.dtype

dtype('int64')

Из вывода мы видим, что столбец точек имеет целочисленный тип данных.

Пример 2: Проверка dtype всех столбцов

Мы можем использовать следующий синтаксис для проверки типа данных всех столбцов в DataFrame:

#check dtype of all columns
df.dtypes

team object
points int64
assists int64
all_star bool
dtype: object

Из вывода мы видим:

  • Столбец команды : объект (это то же самое, что и строка)
  • столбец очков : целое число
  • столбец помогает : целое число
  • столбец all_star : логическое значение

Используя эту одну строку кода, мы можем увидеть тип данных каждого столбца в DataFrame.

Пример 3: проверьте, какие столбцы имеют определенный тип dtype

Мы можем использовать следующий синтаксис, чтобы проверить, какие столбцы в DataFrame имеют тип данных int64:

#show all columns that have a class of int64
df.dtypes [df.dtypes == 'int64']

points int64
assists int64
dtype: object

Из вывода мы видим, что столбцы очков и помощи имеют тип данных int64.

Мы можем использовать аналогичный синтаксис, чтобы проверить, какие столбцы имеют другие типы данных.

Например, мы можем использовать следующий синтаксис, чтобы проверить, какие столбцы в DataFrame имеют тип данных объекта:

#show all columns that have a class of object (i.e. string)
df.dtypes [df.dtypes == 'O']

team object
dtype: object

Мы видим, что только столбец team имеет тип данных «O», что означает объект.

Дополнительные ресурсы

В следующих руководствах объясняется, как выполнять другие распространенные операции с пандами DataFrames:

Pandas: как получить значение ячейки из DataFrame
Pandas: получить индекс строк, столбец которых соответствует значению
Pandas: как установить столбец в качестве индекса