使用Seaborn在Kaggle上打印时出错。错误表示我有分类数据,即使我的数据是int64

2024-10-01 11:42:08 发布

您现在位置:Python中文网/ 问答频道 /正文

我在使用Kaggle的银行营销数据集:https://www.kaggle.com/janiobachmann/bank-marketing-dataset

我想为数值列绘制kdeplot,按deposit过滤。除了pdaysprevious列之外,每个数字列都可以正常工作

具体地说,当我用'deposit' == 'yes'绘制这两列时,一切正常。但是,当我用'deposit' == 'no'绘制这两张图时,它表明我的数据是分类列,因此无法完成。所有这些都适用于我的Jupyter笔记本

请查看此问题的一些屏幕截图: 'deposit'=='yes' works fine

'deposit'=='no' says i have categorical columns

more on this error


Tags: 数据nohttpscomwww绘制银行dataset
1条回答
网友
1楼 · 发布于 2024-10-01 11:42:08

在第二个屏幕截图中,您实际上正在尝试一个distplot。此函数需要数字数据,而不是分类数据

编辑:

该列中有相当多的条目具有值-1。虽然是数字,但如果我理解正确的话,在整数列中使用NaN实际上是一种攻击

如果我更换并丢弃它们,我会得到正确的输出:

sns.kdeplot(df[df['deposit']=='no']['pdays'].replace(-1, np.nan).dropna())

enter image description here

请注意,由于pandas{},因此通过使用新的Int64:"Nullable integer data type"来支持整数列中的<NA>

相关问题 更多 >