datawhale组对学习

详细查看开源链接:https://github.com/datawhalechina/hands-on-data-analysis

 

 

因时间匆忙,本博客记录学习中出现问题方便复习时解决

第一章第一节代码:

#写入代码
import numpy as np
import pandas as pd
import os

#相对路径 载入的是当前根目录下 训练集891*12  测试集891*14 上一级应该是+./这样的形式
#pd.read_csv('train.csv')
pd.read_csv('test_1.csv')
#pd.read_csv('train_chinese.csv')
#得到路径
print(os.getcwd())
data=pd.read_csv('test_1.csv')
data.head(3)

#绝对路径 写上全部的路径 中文会报错所以使用此方式
file=open('/study/hands-on-data-analysis-master/第一单元项目集合/train.csv')
data=pd.read_csv(file)
data.head()

-----------------------------------思考---------------------------

【提示】相对路径载入报错时,尝试使用os.getcwd()查看当前工作目录。 答:引入os包 调用os库内自带的函数,可以了解一下os库

【思考】知道数据加载的方法后,试试pd.read_csv()和pd.read_table()的不同,如果想让他们效果一样,需要怎么做? 使用table读取的是txt文件 了解一下'.tsv'和'.csv'的不同,如何加载这两个数据集? read_table读取的是txt文件

答:使用table读取是把其他的列合并成一列,tsc文件使用tab分割列,csv文件使用 逗号分割列,读取tsv文件: train=pd.read_csv('test.tsv', sep='\t') ,后面可跟一些其他的属性,详情了解pandas手册

【总结】加载的数据是所有工作的第一步,我们的工作会接触到不同的数据格式(eg:.csv;.tsv;.xlsx),但是加载的方法和思路都是一样的,在以后工作和做项目的过程中,遇到之前没有碰到的问题,要多多查资料吗,使用google,了解业务逻辑,明白输入和输出是什么。

python中pandas读取不同格式的文件,具体使用规则查询文档

当读取绝对路径文件,路径中含有中文时报错:OSError: Initializing from file failed

 

1.1.3 任务三:每1000行为一个数据模块,逐块读取(此处存疑)

#写入代码
chunker=pd.read_csv('train.csv',chunksize=1000)
print(type(chunksize))
print(chunksize)
tot=pd.Series([])
for piece in chunker:
    tot=tot.add(piece['Pclass'].value_counts(),fill_value=0)     # 就是获得key 列各值的个数,,
tot=tot.sort_values(ascending=False)
tot[:]

 

1.1.4 任务四:将表头改成中文,索引改为乘客ID [对于某些英文资料,我们可以通过翻译来更直观的熟悉我们的数据]

PassengerId => 乘客ID
Survived => 是否幸存
Pclass => 乘客等级(1/2/3等舱位)
Name => 乘客姓名
Sex => 性别
Age => 年龄
SibSp => 堂兄弟/妹个数
Parch => 父母与小孩个数
Ticket => 船票信息
Fare => 票价
Cabin => 客舱
Embarked => 登船港口

 

#写入代码 header是表头属性 设置索引后就不额外加索引了 不设置header 就把第一行当算入数据了,设置header,第一行不计入数据

data=pd.read_csv('train.csv',names=['乘客ID','是否幸存','仓位等级','姓名','性别','年龄','兄弟姐妹个数','父母子女个数','船票信息','票价','客舱','登船港口'],index_col='乘客ID',header=0)
data.head(5)

查看数据:

#查看信息 查看前10行 查看后15行 判断数据是否为空,为空的地方返回True,其余地方返回False
data.info()
data.head(10)
data.tail(15)
data.isnull().head()

#保存文件
# 注意:不同的操作系统保存下来可能会有乱码。大家可以加入`encoding='GBK' 或者 ’encoding = ’uft-8‘‘`
data.to_csv('my_train_chinese.csv')

后续第二节与第三节代码与记录会进行更新,本文参考datawhale组对学习,开源链接:

https://github.com/datawhalechina/hands-on-data-analysis​​​​​​​

参考教程:https://seancheney.gitbook.io/python-for-data-analysis-2nd/di-05-zhang-pandas-ru-men#dataframe

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值