- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在使用 Pycharm 运行机器学习界面代码。 SVM 算法不断使我的界面崩溃,并出现以下错误:
line 1220, in pushButton_8_handlerax1 = sns.distplot(Y_predict)
line 979, in invraise LinAlgError("singular matrix")
numpy.linalg.LinAlgError: singular matrix
代码如下。
from sklearn import model_selection
from sklearn.model_selection import train_test_split
from sklearn.model_selection import cross_val_score
from sklearn.linear_model import LogisticRegression
from sklearn.tree import DecisionTreeClassifier
from sklearn.neighbors import KNeighborsClassifier
from sklearn.discriminant_analysis import LinearDiscriminantAnalysis
from sklearn.naive_bayes import GaussianNB
from sklearn.svm import SVC
from sklearn.preprocessing import LabelEncoder
from sklearn import tree
from sklearn.metrics import accuracy_score
import pickle
from PIL import Image
import numpy as np
import seaborn as sns
def plot_distribution(inp):
plt.figure()
ax = sns.distplot(inp)
plt.axvline(np.mean(inp), color="k", linestyle="dashed", linewidth=5)
_, max_ = plt.ylim()
plt.text(
inp.mean() + inp.mean() / 10,
max_ - max_ / 10,
"Mean: {:.2f}".format(inp.mean()),
)
return plt.figure
print(np.mean(Y_test))
print(np.mean(Y_predict))
# ________________________Dist Predict Vs. Test and Means value_________________________
plt.figure(figsize=(9, 5))
o = np.mean(Y_test)
tt = np.mean(Y_train)
ax1 = sns.distplot(Y_predict)
ax2 = sns.distplot(Y_test)
RR1 = ('Mean:', tt)
RR2 = ('Mean:', o)
plt.axvline(np.mean(Y_predict), color='b', linestyle='dashed', linewidth=5, label=RR1)
plt.axvline(np.mean(Y_test), color='orange', linestyle='dashed', linewidth=5, label=RR2)
plt.legend()
plt.savefig('DecisionTreeClassifier2.png')
基本上,错误位于 ax1 = sns.distplot(Y_predict)
。
我希望我能够解释这个问题。
谢谢
最佳答案
可以在此处找到类似错误的讨论:https://github.com/mwaskom/seaborn/issues/1502但是,在您的情况下,您似乎使用的是旧版本的 seaborn
。
在最新版本的 seaborn
中,不会出现此错误(引用: https://github.com/mwaskom/seaborn/pull/1823 )。
错误说明
您收到此错误是因为 distplot
函数具有默认输入参数 kde=True
,这会导致观察到的错误。 Y_predict
似乎是离散的,且 bin 大小较大。平均 k 最近距离为 0(对于不太大的 k),这会影响 KDE 的内核宽度估计。
关于python - Seaborn 分布图 "numpy.linalg.LinAlgError: singular matrix",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59645668/
我正在尝试创建按列分组的数据框的 distplot data_plot = creditcard_df.copy() amount = data_plot['Amount'] data_plot.dr
我有一个 seaborn displot 看起来像这样 我想把一些线做成虚线。我怎样才能做到这一点?我尝试以 2 种不同的方式使用 linestyle,但出现错误 #### approach 1 fo
我没有在这个方向找到任何东西,但如果我错了,请告诉我。 这个问题是针对seaborn的jointgrid方法和jointplot方法提出的,因为到目前为止,两者都为我提供了相同的基本结果。但如果一种方
我使用以下代码生成了一个 Seaborn 累积分布图: AlphaGraphCum = sns.distplot(dfControl["alpha"], hist_kws={
我正在使用 Pycharm 运行机器学习界面代码。 SVM 算法不断使我的界面崩溃,并出现以下错误: line 1220, in pushButton_8_handlerax1 = sns.distp
我已经篡改这个脚本有一段时间了,似乎无法弄清楚我做错了什么。 脚本: import seaborn as sns import pandas as pd import matplotlib.pyplo
我是一名优秀的程序员,十分优秀!