您的位置:首页 > 其它

XGboost 实战糖尿病预测

2017-10-31 14:39 507 查看
数据集:pima_indians-diabetes.csv

(https://archive.ics.uci.edu/ml/datasets/Pima+Indians+Diabetes)

美国亚利桑那州的⽐马印第安⼈患糖尿病概率极⾼。WHO为此调查了21岁以上

的⼥性患者,并记录了以下信息:

1. 怀孕了⼏次

2. ⾎糖

3. ⾎压

4. ⽪脂厚度

5. 胰岛素

6. 体质指数

7. 糖尿病⾎统

8. 年龄
9. label:是否患病

# 先导⼊入所有要⽤用的class
import numpy
import xgboost
from sklearn import cross_validation
from sklearn.metrics import accuracy_score
# load数据集
dataset = numpy.loadtxt('pima-indians-diabetes.csv', delimiter=",")
# 把 X Y 分开
X = dataset[:,0:8]
Y = dataset[:,8]
# 现在我们分开训练集和测试集
seed = 7
test_size = 0.33
X_train, X_test, y_train, y_test = cross_validation.train_test_split \
(X, Y, test_size=test_size, random_state=seed)
# 训练模型
model = xgboost.XGBClassifier()
# 这⾥里里参数的设置可以⻅见:http://xgboost.readthedocs.io/en/latest/python/
python_api.html#module-xgboost.sklearn
model.fit(X_train, y_train)
# 做预测
y_pred = model.predict(X_test)
predictions = [round(value) for value in y_pred]
# 显示准确率
accuracy = accuracy_score(y_test, predictions)
print("Accuracy: %.2f%%" % (accuracy * 100.0))
# 更更多的模型:
import sklearn.ensemble.RandomForestClassifier
import sklearn.ensemble.RandomForestRegressor
import sklearn.ensemble.AdaBoostClassifier
import sklearn.ensemble.AdaBosstRegressor
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: