数据挖掘实战(三)——数据建模

根据前两次任务的数据探索结果,进行学习模型的训练,尝试多种模型,这些模型暂未调参,后面再补上

Y=data['status']
X=data.drop('status',axis=1)
# 把数据集拆分成训练集和测试集
seed = 7
test_size = 0.33
X_train, X_test, y_train, y_test = train_test_split(X, Y, test_size=test_size, random_state=seed)
from sklearn.preprocessing import StandardScaler
sc=StandardScaler()
sc.fit(X_test)
X_train_std=sc.transform(X_train)
X_test_std=sc.transform(X_test)
  1. 逻辑回归
    具体算法原理见前面的博文:
    https://blog.csdn.net/weixin_41940752/article/details/88952986
from sklearn.linear_model import LogisticRegression
#训练
model=LogisticRegression(C=1e5)
model.fit(X_train_std, y_train)
# 对测试集做预测
y_pred = model.predict(X_test_std)
  1. 决策树
    具体算法原理见前面博文:
    https://blog.csdn.net/weixin_41940752/article/details/88976566
from sklearn.tree import DecisionTreeClassifier
model=DecisionTreeClassifier()
model.fit(X_train_std, y_train)
# 对测试集做预测
y_pred = model.predict(X_test_std)
  1. SVM
    具体算法原理见前面博文:
    https://blog.csdn.net/weixin_41940752/article/details/90642533
from sklearn.svm import SVC
model=SVC()
model.fit(X_train_std, y_train)
# 对测试集做预测
y_pred = model.predict(X_test_std)
  1. 随机森林
    具体算法原理见前面博文:
    https://blog.csdn.net/weixin_41940752/article/details/98717868
from sklearn.ensemble import RandomForestClassifier
model=RandomForestClassifier()
model.fit(X_train_std, y_train)
# 对测试集做预测
y_pred = model.predict(X_test_std)
  1. Xgboost
    具体算法原理见前面博文:
    https://blog.csdn.net/weixin_41940752/article/details/96114516
from xgboost import XGBClassifier
# 拟合XGBoost模型
model = XGBClassifier()
model.fit(X_train, y_train)
# 对测试集做预测
y_pred = model.predict(X_test)

注:XGB算法能自动处理缺失值,具体原因我研究一下再补上

  1. GBDT
    具体算法原理见前面博文:
    https://blog.csdn.net/weixin_41940752/article/details/98948824
from sklearn.ensemble.gradient_boosting import GradientBoostingClassifier
model=GradientBoostingClassifier()
model.fit(X_train, y_train)
# 对测试集做预测
y_pred = model.predict(X_test)
  1. Adaboost
    具体算法原理见前面博文:
    https://blog.csdn.net/weixin_41940752/article/details/94021240
from sklearn.ensemble import AdaBoostClassifier
model=AdaBoostClassifier()
model.fit(X_train, y_train)
# 对测试集做预测
y_pred = model.predict(X_test)

你可能感兴趣的:(数据挖掘)