数据挖掘实战1:泰坦尼克号数据

一、数据挖掘流程

1.数据读取
      -读取数据
      -统计指标
      -数据规模

2.数据探索(特征理解)
      -单特征的分析,诸个变量分析对结果y的影响(x,y的相关性)
      -多变量分析(x,y之间的相关性)
      -统计绘图

3.数据清洗和预处理
      -缺失值填充
      -标准化、归一化
      -特征工程(筛选有价值的特征)
      -分析特征之间的相关性

4.建模
      -特征数据的准备和标签
      -数据集的切分
      -多种模型对比:交叉验证、调参(学习曲线,网格搜索)
      -集成算法(提升算法)XGBoost、GBDT、light-GBM、神经网络(多种集成)

二、代码实现

1.数据读取

数据集可以去kaggle下载:Titanic - Machine Learning from Disaster | Kaggle

data = pd.read_csv('./data/train.csv')
pd.set_option('display.max_columns', 20)
print(data.head(4))

print(data.info())

print(data['Survived'].value_counts())  # 当前列计数

 2、数据探索

# 标签比例 获救比例,饼图
f, ax = plt.subplots(1, 2, figsize=(10, 6))
data['Survived'].value_counts().plot.pie(explode=[0, 0.1],  # 偏移量
                                         autopct='%1.1f%%',  # 百分比保留小数位数 
                                         ax=ax[0], shadow=True)
ax[0].set_title('Survived')  # 图一标题
sns.countplot('Survived', saturation=0.75,  # 饱和度
              data=data, ax=ax[1])  # 柱状图
plt.show()

# 男女获救比例
print(data.groupby(['Sex', 'Survived'])['Survived'].count())

sns.countplot('Sex', hue='Survived', data=data)  # 柱状图
plt.show()

# 船舱等级和获救之间的关系
print(pd.crosstab(data['Pclass'], data['Survived'], margins=True))

 

sns.countplot('Pclass', hue='Survived', data=data)
plt.show()

# 不同性别及船舱等级和获救之间的关系
print(pd.crosstab([data['Sex'], data['Survived']], data['Pclass'], margins=True))

sns.factorplot('Pclass', 'Survived',
               hue='Sex',  # 颜色
               data=data)   # 降维画图
plt.grid()
plt.show()

 

 3.数据清洗和预处理

3.1 提

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值