- Python项目实战 —— 00. 数据分析试题分享
- 一、概率论与统计学基础
- 二、Python
- 三、数据分析思维
- 四、泰坦尼克号生存数据特征处理
- 4.1 合并训练集与测试集
- 4.2 缺失值处理
- 4.3 不同特征字段的数据处理
- 4.4 利用随机森林预测Age缺失值
- 4.5 各特征与Survived的相关系数排序
- 4.6 小结
大家可以关注知乎或微信公众号的share16,我们也会同步更新此文章。
写在前面的话
本文内容是在参加了’和鲸社区-数据分析闯关‘活动后,总结的一些答错的试题及相关知识点,以供大家参考。若有侵权,请及时联系!
涉及内容有二项分布、超几何分布等。
涉及内容有完美数、水仙花数、回文素数、斐波那契数列、排队报数、分解质因数(含最大公约数/最小公倍数)、Series.str.函数、Series.dt.函数、分箱(cut/qcut)等。
Titanic数据集:点此下载
4.1 合并训练集与测试集import pandas as pd
train = pd.read_csv('/Users/ye/Desktop/train.csv')
test = pd.read_csv('/Users/ye/Desktop/test.csv')
df = pd.concat([train,test])
df.head()
''' 此外,还有merge、join两种方法'''
'''
Embarked : 用众数填充;
Fare : 用均值填充;
Cabin : 座位号,用'no-ticket'填充;
'''
df.Embarked = df.Embarked.fillna(df.Embarked.mode()[0])
df.Fare = df.Fare.fillna(df.Fare.mean())
df.Cabin = df.Cabin.fillna('no-ticket')
#df.loc[df.Cabin.isna(),'Cabin'] = 'no-ticket'
4.3 不同特征字段的数据处理
①对Embarked、Sex及Pclass等用dummy处理
②票价分级处理
③名字处理:提取名字的称呼
④Cabin处理
⑤Ticket处理
4.4 利用随机森林预测Age缺失值
4.5 各特征与Survived的相关系数排序
4.6 小结
缺失值处理:
Age:随机森林预测填充;
各特征字段的数据处理:
Embarked,Sex,Pclass: 直接dummy编码;
Fare: 先分桶处理,再dummy编码;
Name: 先提取称呼,再对称呼进行人群分类,最后dummy处理;
cabin:缺失值较多,根据是否缺失划分类别,缺失为0,否则为1;
Ticket:只保留其中字母,并对字母进行数字转换;
随机森林建模预测Age缺失值;
对各特征与生存与否进行了相关系数大小排序;
谢谢大家



