내가 파이썬 - 특수 실행 xgboost를 사용하려합니다 - A의 나는 NumPy와 매트릭스 X (행 = 관찰 & 열 = 기능)의 데이터를 분류 문제와 라벨 numpy 배열 y. 내 데이터가 희소하기 때문에 스파 스 버전의 X를 사용하여 실행하고 싶습니다.하지만 오류가 발생할 때 누락 된 것으로 보입니다. 등XGBoost 및 희소 행렬
# 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'
을, 나는 찾았다 그것이 어디서 왔는지에 관해서는, 내가 사용하기를 원하는 희소 한 형식과 관련이 있다고 믿습니다. 그러나 그것이 무엇인지, 어떻게 해결할 수 있는지, 나는 단서가 없다.
도움이나 의견을 환영합니다. 대단히 감사합니다.
는'X'이 일을합니까 그냥
작동합니다 라인을 제거? 'xgb'는 스파 스 매트릭스를 사용하는 것에 대해 무엇을 말합니까? 종종 대체물이 떨어지지 않습니다. – hpaulj