> 文档中心 > Pandas的应用---Series

Pandas的应用---Series

目录

Pandas的序列化Series

创建Series对象

 Series访问数据的方法--索引和切片

Series属性和方法

Series常用的方法

总结


Pandas是什么?Pandas是一款开放源码的BSD许可的Python库,具有很强的数据分析和数据挖掘的工具集。而且Pandas还可以和数据可视化工具Matplotlib很好的整合在一起实现数据可视化。它主要应用于金融,经济,统计,分析等学术和商业领域。

Pandas的主要的数据结构:Series和DataFrame

1.Series:是一种能够保存任何类型的数据(整数,字符串,浮点数,Python对象等)的一维标记数组,它是由这一维数组以及一组与之相关的数据标签(即索引)组成。

2.DataFrame:是二维数据结构,即数据以行和列的表格方式排列。每列可以是不同的值类型(数值、字符串、布尔型等),DataFrame即有行索引也有列索引,可以被看做是由Series组成的字典。可以视为 SQL 表或电子表格数据表示。

Pandas的序列化Series

Pandas中的Series对象是一个一维数据结构,和数组非常相似,但也有一些额外的功能。Series的内部结构是由两个数组组成,一个是存放数据的数组,另外一个是存放索引的数据。

创建Series对象

函数创建函数如下:

pandas.Series( data, index, dtype, copy)

参数说明:

data:数据采取各种形式,如:ndarray,list,constants。如果为空则是一个空序列

index:索引值必须是唯一的和散列的,与数据的长度相同。 默认np.arange(n)如果没有索引被传递。

dtype:dtype用于数据类型。如果没有,将推断数据类型

copy:复制数据,默认为false。

代码如下:

import pandas as pd# data参数表示数据,index参数表示数据的索引(标签)# 如果没有指定index属性,默认使用数字索引ser1 = pd.Series(data=[30, 10, 3], index=['一', '二', '三'])# 字典中的键就是数据的索引(标签),字典中的值就是数据ser2 = pd.Series({'一': 30, '二': 10, '三': 3})ser1ser2

运行结果如下:

 Series访问数据的方法--索引和切片

Series对象访问方法和python的数组一样,也有索引和切片操作,但不同的是Series对象内部有一个保存索引,所以除了可以使用整数索引通过位置检索数据外,还可以通过自己设置的索引标签获取对应的数据。但是如果要使用负向索引,在创建Series对象时必须通过index属性指定非数值类型的标签,不然会出错。常用的索引和切片如下:

1. 使用整数索引

2.使用自定义的标签索引

3.切片操作

4.花式索引

5.布尔索引

代码如下:

import pandas as pdser1 = pd.Series(data=[30, 10, 3], index=['一', '二', '三'])ser2 = pd.Series(data=[40, 100, 35], index=[2, 3, 4])ser1[0]  #使用整数索引ser1[-1]#ser2[1]   #会报错#ser2[-1]   #会报错ser1['一']  #使用自定义的标签索引ser1[1:3]   #切片操作ser1[['一','三']]   #花式索引ser1[ser1>=10]   #布尔索引

运行结果:

Series属性和方法

Series对象的常用属性:

Series常用的方法

Series对象的常用方法:

 例子如下:

import pandas as pdimport numpy as npser1 = pd.Series(data=[30, 10, 3], index=['一', '二', '三'])ser2 = pd.Series(data=[40,np.NaN, 35], index=[2, 3, 4])# 求和print(ser2.sum())# 求均值print(ser2.mean())# 求最大print(ser2.max())# 求最小print(ser2.min())# 计数print(ser2.count())# 求标准差print(ser2.std())# 求方差print(ser2.var())# 求中位数print(ser2.median())print(ser2.sort_values())print(ser2.nlargest(2))# backfill或bfill表示用后一个元素的值填充空值# ffill或pad表示用前一个元素的值填充空值ser1.fillna(method='ffill')

运行结果:

总结

我们主要介绍了pandas当中‘Series’对象的经常使用的一些知识点和方法,熟练掌握对于我们搞定数据分析非常有帮助。对于另外一个重要的数据结构‘DataFrame’会在下个章节介绍,谢谢阅读~觉得能帮助到您,可以点个赞,关注一下哈~谢谢~