Python 错误:序列的真值不明确。使用a.empty、a.bool()、a.item()、a.any()或a.all()

Python 错误:序列的真值不明确。使用a.empty、a.bool()、a.item()、a.any()或a.all(),python,pyqt5,Python,Pyqt5,我的接口PYQT5中面临以下错误 ValueError:序列的真值不明确。使用a.empty、a.bool()、a.item()、a.any()或a.all() 出现错误的代码为 x = data.drop('DrainStatnumout',axis='columns') y = data['DrainStatnumout'] data.Failuer = data.Failuer.astype(int)

我的接口PYQT5中面临以下错误

ValueError:序列的真值不明确。使用a.empty、a.bool()、a.item()、a.any()或a.all()

出现错误的代码为

x = data.drop('DrainStatnumout',axis='columns')
                y = data['DrainStatnumout']

                data.Failuer = data.Failuer.astype(int)

                #xx = data.drop(['Assembly1_Availability','Assembly2_Availability',
                                #'LaserCutting_Availability','Failuer','DrainStatnumout'],axis='columns')
                #print(xx)

                X=pd.DataFrame(x)

                Y=pd.DataFrame(y)

                X_train,X_test,Y_train,Y_test=train_test_split(X,Y,test_size=0.20)


plt.figure()
            ax1 = sns.distplot(Y_predict)
            ax2 = sns.distplot(Y_test)
            plt.axvline(np.mean(Y_predict), color='b', linestyle='dashed', linewidth=5)
            plt.axvline(np.mean(Y_test), color='orange', linestyle='dashed', linewidth=5)

            #plt.savefig('dist1.png',dpi=200,orientation='portrait')
            plt.savefig('DecisionTreeClassifier2.png')


    ValueError                                Traceback (most recent call last)
    <ipython-input-1-e0a00ff7678b> in pushButton_2_handler(self)
        588         ax2 = sns.distplot(Y_test)
        589         plt.axvline(np.mean(Y_predict), color='b', linestyle='dashed', linewidth=5)
    --> 590         plt.axvline(np.mean(Y_test), color='orange', linestyle='dashed', linewidth=5)
        591         #plt.savefig('dist1.png',dpi=200,orientation='portrait')
        592         plt.savefig('DecisionTreeClassifier2.png')
x=data.drop('DrainStatnumout',axis='columns')
y=数据['DrainStatnumout']
data.Failuer=data.Failuer.astype(int)
#xx=数据.drop(['Assembly1\u可用性','Assembly2\u可用性',
#“激光切割可用性”、“故障用户”、“DrainStatnumout”]、axis='columns')
#印刷品(xx)
X=pd.DataFrame(X)
Y=pd.数据帧(Y)
X_系列,X_测试,Y_系列,Y_测试=系列测试分割(X,Y,测试尺寸=0.20)
plt.图()
ax1=sns.distplot(Y_预测)
ax2=sns.distplot(Y_测试)
打印轴(np.平均值(Y_预测),颜色为'b',线型为虚线,线宽为5)
轴对称(np.平均值(Y_检验),颜色为橙色,线型为虚线,线宽为5)
#plt.savefig('dist1.png',dpi=200,orientation='trait')
plt.savefig('DecisionTreeClassifier2.png'))
ValueError回溯(最近一次调用上次)
在按钮_2_处理程序中(自身)
588 ax2=sns.distplot(Y_测试)
589 plt.轴(np.平均值(Y_预测),颜色为'b',线型为'虚线',线宽为5)
-->590 plt.轴线(np.平均值(Y_检验),颜色为橙色,线型为虚线,线宽为5)
591#plt.savefig('dist1.png',dpi=200,orientation='肖像')
592 plt.savefig('DecisionTreeClassifier2.png'))

我已取出pd数据框并解决了问题

X = data.drop('DrainStatnumout',axis='columns')

Y = data['DrainStatnumout']
data.Failuer = data.Failuer.astype(int)




                X_train,X_test,Y_train,Y_test=train_test_split(X,Y,test_size=0.20)


plt.figure()
            ax1 = sns.distplot(Y_predict)
            ax2 = sns.distplot(Y_test)
            plt.axvline(np.mean(Y_predict), color='b', linestyle='dashed', linewidth=5)
            plt.axvline(np.mean(Y_test), color='orange', linestyle='dashed', linewidth=5)

            #plt.savefig('dist1.png',dpi=200,orientation='portrait')
            plt.savefig('DecisionTreeClassifier2.png')

如果使用错误消息进行搜索,应该会得到足够的结果,让您知道问题可能是什么。包括一个
Y_test
的最小示例-但我不知道该行如何产生错误。-请提供。请在此处查看有关错误的详细信息:。试着只做np.mean(Y_测试),看看是否有错误。MjH np.mean(Y_测试)运行良好,并给出wright输出值。我真的对这个错误感到困惑。它在界面外确实可以正常工作。首先,您可以检查变量中的内容-
print(np.mean(Y_predict))
print(np.mean(Y_test))
。此错误主要指:
“我期望一个值,但您给我许多值。我不知道该怎么办。使用a.empty、a.bool()、a.item()、a.any()或a.all()给我一个值。”
我在pyqt5中有print(np.mean(Y_检验))和print(np.mean(Y_预测))。np.均值(Y_预测)给了我一个值43.110236220472444,但np.均值(Y_检验)给了我42.551181。数据类型:float64。Strangly可以很好地使用python。