享有数据分析“三剑客之一”盛名的Pandas,主要包含Series和DataFram两种数据对象。它是一个开源的第三方 Python 库,从 Numpy 和 Matplotlib 的基础上构建而来。Pandas 已经成为 Python 数据分析的必备高级工具,它的目标是成为强大、灵活、可以支持任何编程语言的数据分析工具。
Series:一种类似于一维数组的对象,是由一组数据(各种NumPy数据类型)以及一组与之相关的数据标签(即索引)组成。Series对象可以存储整数、浮点数、字符串、python对象等多种数据类型的数据。仅由一组数据也可产生简单的Series对象。注意:Series中的索引值是可以重复的。
安装pandas
在读取excel文件时还需安装依赖库:
1 | pip install pandas |
引入并创建对象
1 | import pandas as pd # 别名pd |
手动修改索引值:
1 | # 手动修改索引 |
自定义索引值:
1 | # 自定义非数字索引 |
索引操作
可通过位置索引、标签索引、切片索引对数据进行自定义获取。
位置索引:s[索引值],其中索引值的范围为0-N-1
标签索引:s[索引名称],获取多个索引值可以通过[[索引名1,索引名2,索引名3…]]的方式获取
切片索引:s[start:stop:step],即开始位置:结束位置:步长。其中位置索引进行切片时,含头不含尾,标签索引切片时含头含尾。
位置索引:
1 | # 位置索引 |
标签索引:
1 | # 标签索引 |
切片索引:
1 | # 切片索引 |
属性和方法
获取Series值和索引
通过s.index和s.values的方式获取索引值和数据值。其中获取的值为numpy的ndarray类型,不是列表类型。获取的索引可以转换成列表。
获取索引:
1 | data = ['张三','李四','王二'] |
获取值:
1 | # 获取值 |
size,axes,dtype,empty,ndim
- size:返回输入数据的元素数量。
- axes:以列表的形式返回所有行索引标签。
- dtype:返回对象的数据类型。
- empty:返回一个空的 Series 对象。
- ndim:返回输入数据的维数。
1 | data = ['张三','李四','王二'] |
head()和tail方法
- head(n):返回前n行数据,默认显示前5行数据
- tail(n):返回后n行数据,默认显示后5行数据
1 | data = ['70','80','90'] |
检测 Series 中的缺失值
所谓缺失值,顾名思义就是值不存在、丢失、缺少。
- isnull():如果为值不存在或者缺失,则返回 True。
- notnull():如果值不存在或者缺失,则返回 False。
1 | ns = pd.Series([1,2,3,None]) |