XGBoost python:输入形状错误,功能名称不匹配错误

XGBoost python:输入形状错误,功能名称不匹配错误,python,pandas,xgboost,mnist,Python,Pandas,Xgboost,Mnist,用于预测数字是否为5的二进制分类器具有X_序列和y_序列(类似于X_测试和y_测试,如下所示)。(类似于MNIST数据集) 火车 pixel0 pixel1 pixel2 pixel3....................pixel783 0 1 1 0 1 0 0 0 1 1

用于预测数字是否为5的二进制分类器具有X_序列和y_序列(类似于X_测试和y_测试,如下所示)。(类似于MNIST数据集)

火车

pixel0  pixel1  pixel2  pixel3....................pixel783   
 0       1         1      0                        1         
 0       0         0      1                        1        
你的火车

 label

  1
  0
等等

基本上,X_列表示一个数字的像素。y_列表示该数字的标签,例如,如果数字为5,则标签将为1,如果数字不是5,则标签将为零

我实现XGBoost如下:

#from xgboost.xgbclassifier import XGBClassifier
from xgboost import XGBClassifier
classifier = XGBClassifier()
classifier.fit(X_train, y_train)
print('Accuracy on test set:',classifier.score(X_test,y_test))


---->print('Accuracy on test set:',classifier.score(X_test,y_test))

Error: ValueError: feature_names mismatch:
然后,为了消除功能名称不匹配,我尝试以下方法,正如许多答案中提到的那样,我应该将X_train和y_train更改为numpy数组:

X_train=train_df.drop('label', axis=1).values
X_test=train_df['label'].values
classifier.fit(X_train,X_test)

----->classifier.fit(X_train,X_test)
Error: ValueError: bad input shape (28000, 784)
我想要什么:

print('Accuracy on test set:',classifier.score(X_test,y_test))
我只想拟合XGBoost并在测试集上像这样计算其准确度分数:

print('Accuracy on test set:',classifier.score(X_test,y_test))

你找到解决这个问题的办法了吗?是的。。。。。。。。。。。。。。。。。。。。。。。。。。。。。