Pandas:如何按数据类型选择列


您可以使用以下方法来选择 pandas DataFrame 中等于特定数据类型的列:

方法 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 '])

以下示例展示了如何将每种方法与以下 pandas DataFrame 一起使用:

 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 中数据类型等于intfloat的所有列:

 #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

请注意,仅选择数据类型等于intfloat的列。

示例 2:选择特定数据类型的不同列

我们可以使用以下代码来选择 DataFrame 中数据类型不等于boolobject的所有列:

 #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

请注意,仅选择数据类型不等于boolobject 的列。

另请注意,您可以使用以下语法来显示 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:如何将列设置为索引

添加评论

您的电子邮箱地址不会被公开。 必填项已用*标注