📜  根据 dtype pandas 获取列 - Python (1)

📅  最后修改于: 2023-12-03 15:40:27.803000             🧑  作者: Mango

根据 dtype pandas 获取列 - Python

在 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 的列

可以使用这两个参数的组合来筛选出所需的列。

注意事项
  • dtype 必须按照 Pandas 数据类型的格式进行指定,例如 "int" 表示整数类型,"float" 表示浮点数类型等等。
  • includeexclude 二者必须选其一,不能同时使用。如果两者都不指定,则默认选择所有可用的 dtype。