导读:Pandas是一个基于Numpy库开发的更高级的结构化数据分析工具,提供了Series、DataFrame、Panel等数据结构,可以很方便地对序列、截面数据(二维表)、面板数据进行处理。
作者:张秋剑 张浩 周大川 常国珍
来源:大数据DT(ID:hzdashuju)
DataFrame是我们常见的二维数据表,包含多个变量(列)和样本(行),通常被称为数据框。
Series是一个一维结构的序列,包含指定的索引信息,可以被视作DataFrame中的一列或一行。其操作方法与DataFrame十分相似。
Panel是包含序列及截面信息的三维结构,通常被称为面板数据。
我们可通过限定时间ID和样本ID获得对应的Series和DataFrame。
由于这些对象的常用操作方法十分相似,因此本文主要使用DataFrame进行演示。
01 读取文件
Pandas库提供了便捷读取本地结构化数据的方法。这里主要以csv数据为例,read_csv函数可以读取csv数据,代码如下:
import pandas as pd
csv = pd.read_csv('data/sample.csv')
csv
id name scores
0 1 小明 78.0
1 2 小红 87.0
2 3 小白 99.0
3 4 小青 99999.0
4 5 小兰 NaN
按照惯例,Pandas会以pd为别名,以read_csv函数读取指定路径下的文件,然后返回一个DataFrame对象。如果在命令行中打印DataFrame对象,可读性可能会略差一些;如果在Jupyter Notebook中打印的话,可读性会大幅提升。
打印出来的DataFrame包含索引(