Pandas: как выбрать столбцы по типу данных
Вы можете использовать следующие методы для выбора столбцов в DataFrame pandas, которые соответствуют определенному типу данных:
Способ 1: выберите столбцы, соответствующие определенному типу данных
#select all columns that have an int or float data type
df. select_dtypes (include=[' int ', ' float '])
Способ 2: выберите разные столбцы определенного типа данных
#select all columns that don't have a bool or object data type
df. select_dtypes (exclude=[' bool ', ' object '])
В следующих примерах показано, как использовать каждый метод со следующим DataFrame pandas:
import pandas as pd #createDataFrame df = pd. DataFrame ({' team ': ['A', 'B', 'C', 'D', 'E', 'F'], ' points ': [18, 22, 19, 14, 14, 11], ' assists ': [5, 7, 7, 9, 12, 9], ' minutes ': [10.1, 12.0, 9.0, 8.0, 8.4, 7.5], ' all_star ': [True, False, False, True, True, True]}) #view DataFrame print (df) team points assists minutes all_star 0 A 18 5 10.1 True 1 B 22 7 12.0 False 2 C 19 7 9.0 False 3 D 14 9 8.0 True 4 E 14 12 8.4 True 5 F 11 9 7.5 True
Пример 1. Выбор столбцов, соответствующих определенному типу данных
Мы можем использовать следующий код, чтобы выбрать все столбцы в DataFrame, имеющие тип данных, равный int или float :
#select all columns that have an int or float data type
df. select_dtypes (include=[' int ', ' float '])
minute assist points
0 18 5 10.1
1 22 7 12.0
2 19 7 9.0
3 14 9 8.0
4 14 12 8.4
5 11 9 7.5
Обратите внимание, что выбираются только столбцы с типом данных, равным int или float .
Пример 2. Выбор разных столбцов определенного типа данных
Мы можем использовать следующий код, чтобы выбрать все столбцы в DataFrame, которые не имеют типа данных, равного bool или object :
#select all columns that don't have a bool or object data type
df. select_dtypes (exclude=[' bool ', ' object '])
minute assist points
0 18 5 10.1
1 22 7 12.0
2 19 7 9.0
3 14 9 8.0
4 14 12 8.4
5 11 9 7.5
Обратите внимание, что выбираются только столбцы, тип данных которых не равен bool или object .
Также обратите внимание, что вы можете использовать следующий синтаксис для отображения типа данных каждого столбца в DataFrame:
#display data type of all columns
df. dtypes
team object
int64 dots
assists int64
minutes float64
all_star bool
dtype:object
Дополнительные ресурсы
В следующих руководствах объясняется, как выполнять другие распространенные операции в pandas:
Pandas: как проверить тип всех столбцов в DataFrame
Pandas: получить индекс строк, столбец которых соответствует значению
Pandas: как установить столбец в качестве индекса