解决了之前的问题,成功使用 sklearn API
import sklearn as sk
import xgboost as xgb
import numpy as np
import pandas as pd
from sklearn.model_selection import train_test_split # 功能:数据集按比例切分为训练集和测试集
from sklearn.metrics import precision_score
from sklearn.metrics import recall_score
from sklearn.preprocessing import scale # 数据集标准化
import matplotlib.pyplot as plt
from pandas_ml import ConfusionMatrix # 引入混淆矩阵
from xgboost.sklearn import XGBClassifier
df = pd.read_csv('creditcard.csv', low_memory=False)
X = df.iloc[:,:-1] # 基于位置的纯整数索引
y = df['Class'] # 类别
X_scaled = scale(X) # 标准化
train_X, test_X, train_y, test_y = train_test_split(X, y, test_size=0.35 ,random_state = 12)
# dtrain = xgb.DMatrix(train_X, label = train_y)
# dtest = xgb.DMatrix(test_X, label = test_y)
XGBC = xgb.XGBClassifier(
gamma = 0.1, # Gamma指定了节点分