成功解决RuntimeError: Selected KDE bandwidth is 0. Cannot estiamte density

成功解决RuntimeError: Selected KDE bandwidth is 0. Cannot estiamte density


解决问题

RuntimeError: Selected KDE bandwidth is 0. Cannot estiamte density.

解决思路

运行时错误:选择的KDE带宽为0。不能estiamte密度。

解决方法

推荐文章:Py之seaborn:数据可视化seaborn库(一)的柱状图、箱线图(置信区间图)、散点图/折线图、核密度图/等高线图、盒形图/小提琴图/LV多框图的简介、使用方法之最强攻略(建议收藏)

出现此bug,是因为Seaborn库(它依赖的scipy或statmodels库来计算kde)没有办法计算出“bandwidth”,kdeplot函数中的bw参数,是一个缩放参数,当然也可以自定义。

1、重新定义bw参数

sns.kdeplot(ser_test, cumulative=True, bw=1.5)

2、调试

try:
    sns.distplot(df)
except RuntimeError as re:
    if str(re).startswith("Selected KDE bandwidth is 0. Cannot estimate density."):
        sns.distplot(df, kde_kws={'bw': 0.1})
    else:
        raise re

​

参考文章:https://stackoverflow.com/questions/60596102/seaborn-selected-kde-bandwidth-is-0-cannot-estimate-density

(0)

相关推荐