金融数据3

构建模型并评估

  • 这里采用逻辑回归、svm和决策树;随机森林和XGBoost进行模型构建,采取的评价方式是accuracy

  • 首先导入我们需要用的库

from sklearn.linear_model import LogisticRegression
from sklearn.svm import SVC
from sklearn.tree import DecisionTreeClassifier
from sklearn.ensemble import RandomForestClassifier 
from xgboost import XGBClassifier
from sklearn.model_selection import train_test_split

from sklearn.metrics import accuracy_score
X_train, X_test, y_train, y_test = train_test_split(df.drop('status', axis=1), df['status'], test_size=0.3, random_state=2018)
  1. 逻辑回归
ltc = LogisticRegression()
ltc.fit(X_train, y_train)
predicted = ltc.predict(X_test)
accuracy_score(y_test, predicted)

0.7477224947442186

  1. svm
svc = SVC()
svc.fit(X_train, y_train)
predicted = svc.predict(X_test)
accuracy_score(y_test, predicted)

0.7484232655921513

  1. 决策树
dtc = DecisionTreeClassifier()
dtc.fit(X_train, y_train)
predicted = dtc.predict(X_test)
accuracy_score(y_test, predicted)

0.7484232655921513

  1. 随机森林
rfc = RandomForestClassifier()
rfc.fit(X_train, y_train)
predicted = rfc.predict(X_test)
accuracy_score(y_test, predicted)

0.7687456201822004

  1. XGBoost
    在利用XGBoost进行数据你和时,发现报错了,在检查特征类型时,发现“cust_id_bin”特征类型为"category"类型的,无法进行拟合,为了简单,我这里就直接删除了这个特征。。。
X_train.drop('cust_id_bin', axis=1, inplace=True)
X_test.drop('cust_id_bin', axis=1, inplace=True)
xgb = XGBClassifier()
xgb.fit(X_train, y_train)
xgb.predict(X_test)
accuracy_score(predicted, y_test)

0.7687456201822004

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值