Поскольку мои данные скудны, я хотел бы запустить их с использованием разреженной версии X, но, похоже, я что-то упускаю из-за возникновения ошибки.
Вот что я делаю:
Код: Выделить всё
# Library import
import numpy as np
import xgboost as xgb
from xgboost.sklearn import XGBClassifier
from scipy.sparse import csr_matrix
# Converting to sparse data and running xgboost
X_csr = csr_matrix(X)
xgb1 = XGBClassifier()
xgtrain = xgb.DMatrix(X_csr, label = y ) #to work with the xgb format
xgtest = xgb.DMatrix(Xtest_csr)
xgb1.fit(xgtrain, y, eval_metric='auc')
dtrain_predictions = xgb1.predict(xgtest)
Теперь я получаю сообщение об ошибке при попытке подогнать классификатор:
Код: Выделить всё
File ".../xgboost/python-package/xgboost/sklearn.py", line 432, in fit
self._features_count = X.shape[1]
AttributeError: 'DMatrix' object has no attribute 'shape'
Буду рад любой помощи и комментариям!
Большое спасибо
Подробнее здесь: https://stackoverflow.com/questions/408 ... rse-matrix
Мобильная версия