You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何基于哑变量值在Python中生成动物/属性列表?

解决方案

首先构造示例中的DataFrame:

import pandas as pd

df = pd.DataFrame({
    "名称": ["狗", "鱼"],
    "毛发": [1, 0],
    "眼睛": [1, 1]
})

a) 生成具备毛发的动物列表

筛选毛发列值为1的行,提取对应名称列并转为列表:

has_fur_animals = df[df["毛发"] == 1]["名称"].tolist()
# 输出结果:['狗']

b) 生成狗具备的所有属性列表

先定位名称为"狗"的行数据,再筛选该行中值为1的属性列(排除名称列),最后转为列表。这里提供两种写法:

写法1:链式调用

dog_attributes = df[df["名称"] == "狗"].drop("名称", axis=1).columns[df[df["名称"] == "狗"].drop("名称", axis=1).iloc[0] == 1].tolist()

写法2:列表推导式(更直观)

# 获取狗的行数据
dog_row = df[df["名称"] == "狗"].iloc[0]
# 遍历属性列,筛选值为1的列名
dog_attributes = [col for col in df.columns if col != "名称" and dog_row[col] == 1]

# 输出结果:['毛发', '眼睛']

内容的提问来源于stack exchange,提问作者Mattyboy

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.15 07:10:19