如何解决sklearn ValueError:每个样本X具有5个功能;期待4
我正在尝试对“ a”进行逻辑回归。这就是代码的样子。我是python的新手,所以深入的说明将非常有帮助(是的,这是两天后的演示的科学怪人代码)。自从我将变量数从4更改为5以来,问题似乎出在我重新训练数据的方式上。
data = pd.read_csv("C:/Users/-----/Desktop/Report Data.csv")
data = data[["a","b","c","d","e","f"
]]
data.fillna(0,inplace=True)
print(data.head())
predict = "a"
X = np.array(data.drop([predict],1))
y = np.array(data[predict])
x_train,x_test,y_train,y_test = sklearn.model_selection.train_test_split(X,y,test_size=0.2)
best = 100
for _ in range(100):
x_train,test_size=0.2)
log = linear_model.LogisticRegression()
log.fit(x_train,y_train)
acc = log.score(x_test,y_test)
print(acc)
if acc > best:
best = acc
with open("FMVmodel.pickle","wb") as f:
pickle.dump(log,f)
pickle_in = open("FMVmodel.pickle","rb")
linear = pickle.load(pickle_in)
predictions = linear.predict(x_test)
for x in range(len(predictions)):
print(predictions[x],x_test[x],y_test[x])
错误看起来像这样:
Traceback (most recent call last):
File "C:/Users/SchaferJ/PycharmProjects/Model/main.py",line 65,in <module>
predictions = linear.predict(x_test)
File "C:\Users\SchaferJ\Anaconda4\lib\site-packages\sklearn\linear_model\_base.py",line 307,in predict
scores = self.decision_function(X)
File "C:\Users\SchaferJ\Anaconda4\lib\site-packages\sklearn\linear_model\_base.py",line 286,in decision_function
raise ValueError("X has %d features per sample; expecting %d"
ValueError: X has 5 features per sample; expecting 4
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。