在 Seaborn 中绘图时 Python 代码出错

Posted

技术标签:

【中文标题】在 Seaborn 中绘图时 Python 代码出错【英文标题】:Error in Python Code when plotting in Seaborn 【发布时间】:2018-08-06 14:18:47 【问题描述】:

我正在尝试使用 seaborn 在 python 中绘制分布图。但是我收到了下面给出的我无法解决的错误。

代码:

sns.distplot(df['nn'])

错误:

cannot convert float NaN to integer

有没有什么有效的方法通过绘制直方图和分布来解决这个问题?

【问题讨论】:

【参考方案1】:

这是因为您的“nn”变量中有缺失值,而 seaborn distplot 不处理缺失值,您可以在绘图时删除缺失值:

df = pd.DataFrame([1,1,2,3,4,5,6,6,6,6,np.nan], columns = ["nn"])
sns.distplot(df['nn'].dropna())

这将为您提供情节:

【讨论】:

【参考方案2】:

您提供的信息很少。但是尝试跳过 nan 值,例如

df.dropna(how='all', inplace=True)

更多示例: https://pandas.pydata.org/pandas-docs/stable/generated/pandas.DataFrame.dropna.html

【讨论】:

以上是关于在 Seaborn 中绘图时 Python 代码出错的主要内容,如果未能解决你的问题,请参考以下文章

Python seaborn大更新,带来全新绘图方式seaborn.objects

Seaborn 绘图代码

Python seaborn大更新,带来全新绘图方式seaborn.objects

Python seaborn大更新,带来全新绘图方式seaborn.objects

Python 数据科学中的 Seaborn 绘图可视化

无法在 Visual Studio 中使用 seaborn 绘图功能