笔者是第一次尝试采用线上分组学习的形式,感谢Datawhale的开源学习平台。本次动手学数据分析的任务就是完成kaggle上泰坦尼克号的task,从数据载入到数据清洗,最后到数据建模分析,完成整个数据分析的步骤。第一章是完成数据载入及使用函数来进行简单的数据观察。
第一章 数据载入及初步观察
1.1 载入数据
1.1.1 首先导入Python中常用的numpy和pandas库
import numpy as np
import pandas as pd
1.1.2 载入数据
#查看当前工作目录
import os
os.getcwd()
#1、使用相对路径载入数据
df=pd.read_csv('./train.csv')
df1=pd.read_table('./train.csv',sep=',')
#2、使用绝对路径载入数据
df2=pd.read_csv('D:/hands-on-data-analysis-master项目/第一单元项目集合/test_1.csv')
read_csv()与read_table()的区别
同样都是从文件、URL、文件型对象中加载带分隔符的数据,其最大区别在pd.read_csv()默认用逗号分隔,对应.csv文件;而pd.read_table()默认用制表符("\t")分隔,对应.tsv文件。只要把两者分隔方式改成一样,两者的效果就是一样。两种文件都可以使用pd.read_csv()和pd.read_table()来载入。
逐块读取
当文件数据过大时,整个读取会造成内存运行速度降低且占据较大内存,或者你只想读取文件的一小部分,采用逐块读取,加快读取速度且减少内存消耗。chunker返回的对象是TextFileReader类型。
chunker=pd.read_csv('./train.csv',chunksize=10)
type(chunker)
for i in chunker:
print(i)
修改表头
方法一:直接全部更改列名称
方法二:使用rename函数更改列名
#更改表头方法一
#df.columns=["乘客ID","是否幸存","乘客等级(1/2/3等舱位)","乘客姓名","性别","年龄","堂兄弟/妹个数","父母与小孩个数"," 船票