首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Seaborn Catplot抛出错误:真值不明确

Seaborn Catplot抛出错误:真值不明确
EN

Stack Overflow用户
提问于 2020-06-03 14:07:33
回答 1查看 458关注 0票数 1

我正在尝试使用seaborn库为我的数据框架中的所有分类变量做一个catplot,但我得到了不明确的真值错误。它通常与"&“值一起发生,但我无法在这里找到根本原因。我的目标是连续变量。

代码语言:javascript
复制
import numpy as np
import pandas as pd
import matplotlib.pyplot as plt
import seaborn as sns

target = df[target_col]
features = df[df.columns.difference([target_col])]

cat_cols = features.select_dtypes(include=['object']).columns.to_list()

fig, axes = plt.subplots(round(len(cat_cols) / 3), 3, figsize=(15, 15))
for i, ax in enumerate(fig.axes):
        if i < len(cat_cols):
           sns.catplot(x=cat_cols[i], y=target, kind='bar',data=df, ax = ax)

但是我得到了下面的错误。哪个部分导致了这个值错误?

代码语言:javascript
复制
ValueError: The truth value of a Series is ambiguous. Use a.empty, a.bool(), a.item(), a.any() or a.all().
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2020-06-03 16:35:04

sns.catplot是栅格级绘图,因此不应将其插入到子图中。您可以将facetgrid与barplot一起使用:

例如,以下是您的数据:

代码语言:javascript
复制
import numpy as np
import pandas as pd
import matplotlib.pyplot as plt
import seaborn as sns

df = pd.DataFrame({'y':np.random.uniform(0,1,50),'A':np.random.choice(['a1','a2'],50),
                  'B':np.random.choice(['b1','b2'],50),'C':np.random.randint(0,10,50),
                  'D':np.random.choice(['d1','d2'],50),'E':np.random.choice(['e1','e2'],50)})
target_col = "y"
cat_cols = df.columns[df.dtypes==object]

seaborn在长格式下工作得更好,所以你可以像这样旋转你的数据:

代码语言:javascript
复制
df.melt(id_vars=target_col,value_vars=cat_cols)

    y      variable value
0   0.606734    A   a1
1   0.603324    A   a2
2   0.938280    A   a2
3   0.718703    A   a1
4   0.808013    A   a1

column变量现在定义了要绘制的面,x轴是您的值。我们直接调用它:

代码语言:javascript
复制
g = sns.FacetGrid(df.melt(id_vars=target_col,value_vars=cat_cols), 
col='variable', sharex=False,col_wrap=3)
g.map_dataframe(sns.barplot, x="value", y="y")

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/62166292

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档