第2次作业-titanic数据集练习
2019-10-15 17:43 QW`ER 阅读(410) 评论(0) 收藏 举报一、读入titanic.xlsx文件,按照教材示例步骤,完成数据清洗。
titanic数据集包含11个特征,分别是:
Survived:0代表死亡,1代表存活
Pclass:乘客所持票类,有三种值(1,2,3)
Name:乘客姓名
Sex:乘客性别
Age:乘客年龄(有缺失)
SibSp:乘客兄弟姐妹/配偶的个数(整数值)
Parch:乘客父母/孩子的个数(整数值)
Ticket:票号(字符串)
Fare:乘客所持票的价格(浮点数,0-500不等)
Cabin:乘客所在船舱(有缺失)
Embark:乘客登船港口:S、C、Q(有缺失)
1.显示前五行
import pandas as pd
titanic = pd.DataFrame(pd.read_excel('C:/Users/李晓斌/Downloads/[批量下载]数据文件等1个文件/数据文件/titanic-2.xlsx'))
titanic.head()

2、删除无效列与行
titanic.drop('embark_town',axis=1,inplace=True) titanic.head()

3、重复值处理
3.1查找重复值
titanic.duplicated()

3.2删除重复行
titanic=titanic.drop_duplicates()
titanic.head()

4、空值与缺失值处理
统计个数
titanic['who'].isnull().value_counts()

使用fillna方法填充为man
titanic['who']=titanic['who'].fillna('man') titanic.head()

#为age字段的空值填充平均值 titanic['age']=titanic['age'].fillna(titanic['age'].mean()) titanic.head()

5、空格处理
titanic['fare'] = titanic['fare'].map(str.strip) titanic['fare'] = titanic['fare'].map(str.lstrip) titanic['fare'] = titanic['fare'].map(str.rstrip)
6、异常值处理
查看DataFrame每栏的统计数据
titanic.describe()

异常值替换成平均值
titanic.replace([512.329200],titanic['fare'].mean())

二、对titanic数据集完成以下统计操作
1.统计乘客死亡和存活人数
titanic.survived.value_counts()


2.统计乘客中男女性别人数
titanic.sex.value_counts()

3.统计男女获救的人数
titanic['sex'][titanic['survived']!=0].value_counts()

4.统计乘客所在的船舱等级的人数
titanic['class'].value_counts()

5.使用corr()函数,判断两个属性是否具有相关性,分析舱位的高低和存活率的关系
titanic['survived'].corr(titanic['pclass'])

所得的结果是负数,舱位的高低与存活率呈现负相关
6.画出乘客票价与舱位等级的箱体图Boxplot,从图中能够得到哪些结论?
import matplotlib.pyplot as plt titanic.boxplot(['fare'],['pclass'],grid=False) plt.show()

浙公网安备 33010602011771号