Pandas简介
Python Data Analysis Library 或 pandas 是基于NumPy 的一种工具,该工具是为了解决数据分析任务而创建的。Pandas 纳入了大量库和一些标准的数据模型,提供了高效地操作大型数据集所需的工具。pandas提供了大量能使我们快速便捷地处理数据的函数和方法。你很快就会发现,它是使Python成为强大而高效的数据分析环境的重要因素之一。
Series:一维数组,与Numpy中的一维array类似。二者与Python基本的数据结构List也很相近,其区别是:List中的元素可以是不同的数据类型,而Array和Series中则只允许存储相同的数据类型,这样可以更有效的使用内存,提高运算效率。
Time- Series:以时间为索引的Series。
DataFrame:二维的表格型数据结构。很多功能与R中的data.frame类似。可以将DataFrame理解为Series的容器。以下的内容主要以DataFrame为主。
Panel :三维的数组,可以理解为DataFrame的容器。
Pandas 有两种自己独有的基本数据结构。读者应该注意的是,它固然有着两种数据结构,因为它依然是 Python 的一个库,所以,Python 中有的数据类型在这里依然适用,也同样还可以使用类自己定义数据类型。只不过,Pandas 里面又定义了两种数据类型:Series 和 DataFrame,它们让数据操作更简单了。
Pandas操作集合
1 、pandas数据结构之Series
1.1 创建Series
# 导入pandas和numpy !pip install numpy !pip install pandas import pandas as pd import numpy as np
1.1.1 从ndarray创建Series
pd.Series():创建一个数据表,里面的index提供了索引的方法,给出的是一个列表的类型。
同时也可以使用index取出标签索引
1.1.2 从字典或列表创建Series
Series提供了字典的类型,进行组合,就算是我们有缺失的键值对,但是我们可以自己定义标签index
列表也可以完成,这在我们进行爬虫的时候,我们可以用列表容器进行,存储
1.1.3 从标量创建
创建的是一样的值,我们可以根据自己的需要进行
1.2 对Series的操作
1.2.1 Series和ndarray相似的操作
按照索引进行取值和修改
get()方法,如果存在这样的键值对,那么就可以取出来,但是如果不存在,就会使用后面的那个默认值
索引切片和我们之前介绍的Python内置方法也是一样,和numpy里面的思想也差不多,这里就不多多赘述了。
1.2.2 向量化运算
1.2.3 类似字典的操作
我们发现列表解析原来如此的强大,为我们减轻很多的麻烦,其实如果你熟练掌握Python的基础语法,这一点你也是可以理解的
1.2.4 时间序列操作
pd.date_range():
pd.date_range( start=None,#开始时间 end=None,#截止时间 periods=None,#总长度 freq=None,#时间间隔 tz=None,#时区 normalize=False,#是否标准化到midnight name=None,#date名称 closed=None,#首尾是否在内 **kwargs, ) asfreq("时间频率"):改变时间频率
索引思想依然一致
按照步长进行索引的搜寻