我正在尝试运行此代码,并且预测模型(predictions = model.predict(y1))显示标题中建议的错误。我是该地区的新手,有什么帮助吗?
from sklearn import linear_model
regr = linear_model.LinearRegression()
import seaborn as seabornInstance
from sklearn.model_selection import train_test_split
from sklearn import metrics
x1 = np.asanyarray(train[['MachineAvailability','StatNumIn','MachineMTTR']])
y1 = np.asanyarray(train[['StatNumOut']])
regr.fit (x1, y1)
# The coefficients
print ('Coefficients: ', regr.coef_)
print('Intercept: \n', regr.intercept_)
y_hat= regr.predict(test[['MachineAvailability','StatNumIn','MachineMTTR']])
x = np.asanyarray(test[['MachineAvailability','StatNumIn','MachineMTTR']])
y = np.asanyarray(test[['StatNumOut']])
print("Residual sum of squares: %.2f"
% np.mean((y_hat - y) ** 2))
# Explained variance score: 1 is perfect prediction
print('Variance score: %.2f' % regr.score(x, y))
import tkinter as tk
import statsmodels.api as sm
from sklearn.decomposition import PCA
X = sm.add_constant(x1) # adding a constant
model = sm.OLS(x1, y1).fit()
predictions = model.predict(y1)
# prediction with sklearn
New_MachineAvailability = 90
#New_StatNumIn = 90
New_MachineMTTR = 20
print ('Predicted Production: \n', regr.predict([[New_MachineMTTR,New_MachineAvailability ]]))
答案 0 :(得分:0)
该错误告诉您所有要了解的信息:new Vue({
el: "#app",
data() {
return {
testButClicked: false
}
},
methods: {
testToast() {
this.testButClicked = true;
}
},
watch:{
testButClicked(val){
if (val){
setTimeout(()=>this.testButClicked=false,1000);
}
}
}
})
函数的输入形状与预期的不匹配。
您已经在形状为predict
(例如x1
)的输入数据上训练了模型,其中(n, k)
是行数(轴0),n
是行数列(轴1)。这意味着根据列数(即k
),predict
函数的输入必须与期望的形状匹配。可以有任意数量的行(没关系,只是样本数),但列数(m, k)
相同。
在您的情况下,您将k
与predict
一起运行,这是模型的标签(目标)。它具有不同的形状,可能不是您的意思。如果您通过y1
,则可以使用,但毫无意义-x1
是您的训练数据。您应该留出一些数据进行测试,例如x1
,以便在其上运行预测并评估模型的执行情况。