阿里天池--金融数据分析赛题1:银行客户认购产品预测

该博客介绍了阿里天池金融数据分析赛题,目标是预测银行客户是否会购买产品。作者详细阐述了数据预处理过程,包括数据合并、非数字特征编码、离群点处理,以及使用各种机器学习模型进行训练和调参,如Logistic Regression、决策树、随机森林、GBDT和LightGBM,并以Accuracy作为评估标准。
摘要由CSDN通过智能技术生成

赛题简介

 银行客户认购产品预测

赛题以银行产品认购预测为背景,想让你来预测下客户是否会购买银行的产品。在和客户沟通的过程中,我们记录了和客户联系的次数,上一次联系的时长,上一次联系的时间间隔,同时在银行系统中我们保存了客户的基本信息,包括:年龄、职业、婚姻、之前是否有违约、是否有房贷等信息,此外我们还统计了当前市场的情况:就业、消费信息、银行同业拆解率等。

数据来源:【教学赛】金融数据分析赛题1:银行客户认购产品预测_学习赛_赛题与数据_天池大赛-阿里云天池

任务:

预测用户是否进行购买产品

评价标准: Accuracy (所有分类正确的百分比)

一:读取数据

import pandas as pd

# 读取数据

train = pd.read_csv('train.csv')

test = pd.read_csv('test.csv')

二:数据预处理

        1.对数据集进行合并

# 训练集和测试集合并,将训练数据和测试数据在行的方向拼接

df = pd.concat([train, test], axis=0)

df

        2.将非数字特征转成数字

# 选出所有的特征为object(非数字)的特征列,对其进行处理

cat_columns = df.select_dtypes(include='object').columns

df[cat_columns]

         3.对数字进行编码

# 对非数字特征进行编码

from sklearn.preprocessing import LabelEncoder

job_le = LabelEncoder()

df['job'] = job_le.fit_transform(df['job'])

df['marital'] = df['marital'].map({'unknown':0, 'single':1, 'married':2, 'divorced':3})

df['education'] = df['education'].map({'unknown':0, 'basic.4y':1, 'basic.6y':2, 'basic.9y':3, 'high.school':4, 'university.degree':5, 'professional.course':6, &#

评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值