답변:
.values
필요에 따라 열을 조작 한 후에는 데이터 프레임의 방법을 사용하여 원시 데이터에 액세스 할 수 있습니다.
예 :
train = pd.read_csv("train.csv")
target = train['target']
train = train.drop(['ID','target'],axis=1)
test = pd.read_csv("test.csv")
test = test.drop(['ID'],axis=1)
xgtrain = xgb.DMatrix(train.values, target.values)
xgtest = xgb.DMatrix(test.values)
분명히 삭제하거나 훈련 대상으로 사용할 열을 변경해야 할 수도 있습니다. 위의 내용은 Kaggle 경쟁을위한 것이기 때문에 목표 데이터가 없습니다 xgtest
(주최측이이를 보류 함).
.values
)
pandas_ml
XGBoost를 지원 하는 라이브러리가 있다는 좋은 소식이 있습니다. 이것은 아마도 워크 플로우를 간소화합니다.
XGBoost와 함께 Pandas DataFrames를 직접 사용할 수 있습니다. xgboost 0.81과 확실히 작동합니다.
예를 들어 X_train, X_val, y_train 및 y_val은 DataFrames입니다.
import xgboost as xgb
mod = xgb.XGBRegressor(
gamma=1,
learning_rate=0.01,
max_depth=3,
n_estimators=10000,
subsample=0.8,
random_state=34
)
mod.fit(X_train, y_train)
predictions = mod.predict(X_val)
rmse = sqrt(mean_squared_error(y_val, predictions))
print("score: {0:,.0f}".format(rmse))
xgb.DMatrix(X_train.values, y_train.values)
내가보고 있어요TypeError: can not initialize DMatrix from dict