1.简介
pandas是python的一个数据分析包,由AQR于2008年4月开发,2009年底开源。
pandas最初被作为金融数据分析工具而开发出来,因此pandas为时间序列分析提供了很好的支持。
基本功能
集成时间序列功能
既能处理时间序列数据,也能处理非时间序列数据的数据结构
灵活处理缺失数据
合并及其他出现在常见数据库中的关系型运算
数据结构
Series,是一种类似于一维数组的对象,它由一组数据以及与一组与之相关的数据标签(即索引)组成。
Series的字符串表现形式为:索引在左边,值在右边。
from pandas import Series print('用数组生成Series,不指定索引') s1 = Series([4,7,-5,3]) print(s1) print(s1.values) print(s1.index)
print('指定Series的index') s2 = Series([4, 7, -5, 3], index = ['d', 'b', 'a', 'c']) print(s2) print(s2.index) print(s2['a']) s2['d'] = 6 print(s2[['c', 'a', 'd']]) print(s2[s2 > 0]) # 找出大于0的元素 print('b' in s2) # 判断索引是否存在 print('e' in s2)
print('使用字典生成Series') sdata = {'Ohio':45000, 'Texas':71000, 'Oregon':16000, 'Utah':5000} s3 = Series(sdata) print(s3)
print('使用字典生成series,并额外指定index,不匹配部分为NaN') states = ['California', 'Ohio', 'Oregon', 'Texas'] s4 = Series(sdata, index = states) print(s4) print('series相加,相同索引部分相加') print(s3+s4) print('指定series及其索引的名字') s4.name = 'population' s4.index.name = 'state' print(s4) print('替换index') s1.index = ['Bob', 'Steve', 'Jeff', 'Ryan'] print(s1)
DataFrame
是一个表格型的数据结构,它含有一组有序的列,每列可以使不同的值类型。
既有行索引,又有列索引,它可以被看做由Series组成的字典。