DataFrame.select_dtypes(include=None, exclude=None) [source]
根据列dtypes返回DataFrame的列的子集。
参数: | include, exclude: 要包含/排除的dtype或字符串的选择。必须提供这些参数中的至少一个。 |
返回值: | DataFrame frame的子集,包括 |
Raises: | ValueError 如果 如果包含和排除有重叠的元素 如果传入任何类型的字符串 |
Notes
- 要选择所有数字类型,请使用
np.number
或'number'
- 要选择字符串,您必须使用
objectdtype
,但是请注意,这将返回所有对象dtype
列 - 请参见numpy dtype层次结构
- 要选择日期时间,使用
np.datetime64
,'datetime'
或'datetime64'
- 要选择
timedeltas
,使用np.timedelta64
,'timedelta'
或'timedelta64'
- 要选择
Pandas
类别dtype
,请使用'category'
- 要选择
Pandas datetimetz dtypes
,请使用'datetimetz'(
0.20.0中的新增功能)或'datetime64[ns, tz]'
例子
>>> df = pd.DataFrame({'a': [1, 2] * 3,
... 'b': [True, False] * 3,
... 'c': [1.0, 2.0] * 3})
>>> df
a b c
0 1 True 1.0
1 2 False 2.0
2 1 True 1.0
3 2 False 2.0
4 1 True 1.0
5 2 False 2.0
>>> df.select_dtypes(include='bool')
b
0 True
1 False
2 True
3 False
4 True
5 False
>>> df.select_dtypes(include=['float64'])
c
0 1.0
1 2.0
2 1.0
3 2.0
4 1.0
5 2.0
>>> df.select_dtypes(exclude=['int64'])
b c
0 True 1.0
1 False 2.0
2 True 1.0
3 False 2.0
4 True 1.0
5 False 2.0