You need to enable JavaScript to run this app. Python中使用Seaborn绘制基于其他多列值筛选的数据集图表
优惠活动
大模型
产品
解决方案
定价
更多

Python中使用Seaborn绘制基于其他多列值筛选的数据集图表

多条件筛选绘图问题解决

你代码报错的核心原因是多条件筛选的语法不符合pandas规则:pandas做多个列的组合筛选时,需要将所有判断条件放在同一组索引括号内,每个条件单独用小括号包裹,条件间用&(表示同时满足所有条件)或者|(表示满足任意一个条件)连接。你之前的写法是对两个独立筛选后的数据集做按位与运算,逻辑和语法都不成立。

修正后完整代码

import seaborn as sns
import matplotlib.pyplot as plt

plt.figure(figsize = (15, 5))
plt.title("KDE Plot:", fontsize = 30, fontweight = 'bold')
# 多条件筛选写法:所有条件放在同一组[]内,每个条件加小括号
ax = sns.kdeplot(
    df[(df.OpenedLCInd== 1) & (df.Age > 50)]['APlusCreditTier'].dropna(),
    label = 'Opened Letter Check',
    lw = 2
)
ax1 = sns.kdeplot(
    df[df.OpenedLCInd == 0]['APlusCreditTier'].dropna(), 
    label = 'No Open Letter Check', 
    lw = 2
)
# 原代码plt.legend = True是错误写法,改为调用legend函数
plt.legend()
plt.tight_layout()
plt.show()

扩展到3个条件的写法

如果需要新增第三个筛选条件,比如同时要求Income列取值大于10000,直接在条件块里新增即可:

# 三个条件同时满足的筛选示例
df[(df.OpenedLCInd== 1) & (df.Age > 50) & (df.Income > 10000)]['APlusCreditTier'].dropna()

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.20 19:36:03