DataFrame.select_dtypes
根据列的 dtypes
返回DataFrame的列的子集。
DataFrame.select_dtypes(include=None, exclude=None)
参数:
include, exclude :标量或数据类型构成的数组
include
要选取的,exclude
要排除的
返回值:
DataFrame
包括include中的dtypes和exclude中的dtypes的DataFrame子集。
Notes
- To select all numeric types, use
np.number
or'number'
- To select strings you must use the
object
dtype, but note that this will return all object dtype columns - To select datetimes, use
np.datetime64
,'datetime'
or'datetime64'
- To select Pandas categorical dtypes, use
'category'
- To select timedeltas, use
np.timedelta64
,'timedelta'
or'timedelta64'
- See the numpy dtype hierarchy
Examples
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
假设你仅仅需要选取数值型的列,那么你可以使用 select_dtypes()
函数:
这包含了int和float型的列。
你还可以选取多种数据类型,只需要传递一个列表即可:
你还可以用来排除特定的数据类型: