📅  最后修改于: 2023-12-03 15:40:27.803000             🧑  作者: Mango
在 Pandas 数据框中,有时需要根据数据类型筛选出特定的列。Pandas 提供了一种方便的方法来获取指定 dtype 的列。
假设有以下数据框:
import pandas as pd
data = {
"Name": ["Alice", "Bob", "Charlie", "David"],
"Age": [25, 30, 35, 40],
"Weight": [60.5, 80.0, 72.3, 90.1],
"Date": pd.date_range("20220101", periods=4),
"HasChildren": [True, False, True, False]
}
df = pd.DataFrame(data)
我们想要获取所有数值类型的列,可以使用 select_dtypes
方法:
numeric_cols = df.select_dtypes(include=["int", "float"])
这样就能够获取到所有的数值类型的列,返回的是一个数据框。
如果想获取到所有 bool 类型的列,可以这样写:
bool_cols = df.select_dtypes(include=["bool"])
include
:指定要包含哪些 dtype 的列exclude
:指定要排除掉哪些 dtype 的列可以使用这两个参数的组合来筛选出所需的列。
include
和 exclude
二者必须选其一,不能同时使用。如果两者都不指定,则默认选择所有可用的 dtype。