数据分析——泰坦尼克号乘客数据集

数据分析——泰坦尼克号数据集(一)

泰坦尼克号乘客数据:https://www.kaggle.com/c/titanic/overview
Datawhale开源课程:https://github.com/datawhalechina/hands-on-data-analysis

一、数据载入以及初步观察

1.1. 导入库

import numpy as np
import pandas as pd

1.2. pd.read_csv和pd.read_table读取

# pd.read_csv()
data = pd.read_csv('train.csv')
data0 = pd.read_csv('E:/MyPython/train.csv')
# pd.read_table()读取
data1 = pd.read_table('train.cav',sep = ',') # read_table默认分隔符是‘\t’

1.3. chunk分块读取

chunker = pd.read_csv('train.csv', chunksize=1000)
#读取方式一
chunker.get_chunk()
#读取方式二
for chunk in chunker:
    print(chunk)

1.4. 修改数据表头

# 将表头改成中文,索引改为乘客ID
data = pd.read_csv('train.csv', 
                 names=['乘客ID','是否幸存','仓位等级','姓名','性别','年龄',
                        '兄弟姐妹个数','父母子女个数','船票信息','票价','客舱','登船港口'],
                 index_col='乘客ID')
data.head()

1.5. 读取数据基本信息及判断是否为空

# 读取基本信息
data.info()
# 观察表格前十行
data.head(10) # data.head()默认为前5
# 观察表格后15行
data.tail(15) 
# 判断数据是否为空
data.isnull()

1.6. 保存数据

data.to_csv('trainchinese.csv')

二、Pandas 基础

2.1. 查看数据具体信息

# 查看列名
data.columns
# 查看Cabin所有值
data['Cabin'].head()
# 或者 data.Cabin.head()

2.2. 删除指定的列

# 方法一
del data['a']
#方法二
data.drop(['a'], axis=1, inplace=True)
# inplace=True, 直接从内部删除

# 若只想隐藏指定的列
data.drop(['a'],axis=1)

2.3. 选择指定的列并查看

# 筛选年龄小于10岁
data[data["Age"]<10]
# 筛选Fare大于7小于70
data[(data["Fare"]>10) & (df["Fare"]<50)]
# 筛选Fare小于7大于70
data[(data["Fare"]>10) | (df["Fare"]<50)]
# 使用loc、iloc、reset_index()选择指定列
# reset_index()
midage0 = data.reset_index(drop=True)
# loc
midage1 = data.loc[[100],['Pclass','Sex','Name']]
# iloc
midage2 = data.iloc[[100],[2,3,4]]

三、探索性数据分析

3.1. 对数据进行排序

'''导入数据为trainchinese.csv'''
# 根据票价和年龄两列进行排序
data0 = data.sort_values(by=['票价', '年龄'], ascending=False)
data0.head()
'''
# 行索引升序
data.sort_index()
# 列索引升序
data.sort_index(axis = 1)
# 列索引降序
data.sort_index(axis = 1,ascending = False)
'''

3.2. Pandas计算

# 计算船上各个家族
data1 = data['兄弟姐妹个数'] + data['父母子女个数']
max(data1) # 最大值
min(data1) # 最小值
mean(data1) # 平均数
medain(data1) # 中位数

3.3. Pandas describe()函数查看数据

data.descirbe()
# 指定列:“仓位等级”
data['仓位等级'].describe()
  • 4
    点赞
  • 21
    收藏
    觉得还不错? 一键收藏
  • 4
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值