第二次学习笔记,pandas的入门。

一、数据加载

1.1载入数据

数据集下载 https://www.kaggle.com/c/titanic/overview,以泰坦尼克号的表格为例,通过实战学习使用。

1.1.1导入pandas和numpy

Pandas 是 Python 语言的一个扩展程序库,用于数据分析。

Numpy 中包含了一些函数用于处理数组。

import pandas as pd
import numpy as np

1.1.2载入数据

可使用相对路径和绝对路径载入文件。

相对路径:

df = pd.read_csv('train.csv')
df.head(3)

绝对路径:

df = pd.read_csv('/Users/chenandong/Documents/datawhale数据分析每个人题目设计/招募阶段/第一单元项目集合/train.csv')
df.head(3)

提示:当使用相对路径报错时,可查看当前的工作目录。成功载入文件后,会显示文件的前三行。

1.1.3每1000个行为为一个数据模块,逐块读取

chunker = pd.read_csv('train.csv', chunksize=1000)

采用逐块读取文件的主要目的是防止文件过大,一次性加载到内存,会让内存爆掉,或者内存一次性无法加载这么多

1.1.4将表头改为中文

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

()里为空时会读取前五行。

1.2初步观察

2.2.1查看数据的基本信息

df.info()

2.2.2观察表格的前十行和后十五行

前十行:

df.head(10)

后十五行:

df.tail(15)

2.2.3判断数据是否为空,空返回true,其余返回false

df.insull().head()

会显示前五行的。

1.3保存数据

将做出改变的数据进行保存。

df.to_csv('train_chinese.csv')

1.4知道我们的数据是什么

1.4.1载入文件

df = pd.read_csv('train.csv')
df.head(3)

1.4.2查看每列数据的名称

df.columns

1.4.3查看“Cabin”这列的所有值

法一:

df['Cabin'].head(3)

法二:

df.Cabin.head(3)

1.4.4加载文件test_1.csv并与train.csv做对比,看看有哪些多余的列,并将这些列删除。

test_1 = pd.read_csv('test_1.csv')
test_1.head(3)

通过观察,发现有一列多余。

del test_1['a']
test_1.head(3)

1.4.5隐藏几列元素

df.drop(['PassengerId','Name','Age','Ticket'],axis=1).head(3)

1.5筛选的逻辑

1.5.1按照年龄小于十来筛选

df[df["Age"]<10].head(3)

1.5.2以“Age”为条件,将年龄在十以上五十以下的信息显示出看来,并将这个数据命名为midage。

midage = df[(df["Age"]>10)& (df["Age"]<50)]
midage.head(3)

1.5.3将midage中的数据中的第一百行的“Pclass”和“Sex”显示出来。

midage = midage.reset_index(drop=True)
midage.head(3)

1.5.4将midage的数据中第100,105,108行的"Pclass","Name"和"Sex"的数据显示出来

loc方法:

midage.loc[[100,105,108],['Pclass','Name','Sex']] 

iloc方法:

midage.iloc[[100,105,108],[2,3,4]]

二、探索性数据分析

在开始之前也要将pandas和numpy导入。

2.1利用pandas对示例数据进行排序

升序:

#自己构建一个都为数字的DataFrame数据
frame = pd.DataFrame(np.arange(8).reshape((2, 4)), 
                     index=['2', '1'], 
                     columns=['d', 'a', 'b', 'c'])
frame

 # 大多数时候我们都是想根据列的值来排序,所以,将你构建的DataFrame中的数据根据某一列,升序排列


frame.sort_values(by='c', ascending=True)

让行索引升序排序:

frame.sort_index()

让列索引升序排序:

frame.sort_index(axis=1)

降序排序:

frame.sort_index(axis=1, ascending=False)

2.2利用pandas进行算术计算

#建立一个例子
frame1_a = pd.DataFrame(np.arange(9.).reshape(3, 3),
                     columns=['a', 'b', 'c'],
                     index=['one', 'two', 'three'])
frame1_b = pd.DataFrame(np.arange(12.).reshape(4, 3),
                     columns=['a', 'e', 'c'],
                     index=['first', 'one', 'two', 'second'])
frame1_a

三、总结

本节中我们通过Pandas的一些内置函数对数据进行了初步统计查看,要看懂函数中得出的数据。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值