Pandas Series的用法(附带实例)
Pandas 中的 Series 是能够保存任何类型数据(整数、字符串、浮点数、Python 对象等)的一维标记数组。
Pandas 创建 Series 可以使用如下的构造函数:
【实例】利用 ndarray 创建一个Series。
【实例】从给定的字典中创建一个 Series。
【实例】从标量创建一个Series。
例如:
以下代码可以实现检索 Series 中的前三个元素。如果 a: 被插入到其前面,则从该索引向前的所有项目被提取。例如,检索两个索引之间的项目(不包括停止索引):
如果要检索最后三个元素,代码为:
【实例】使用索引标签检索单个/多个元素。
Pandas 创建 Series 可以使用如下的构造函数:
pandas.Series(data, index, dtype, copy)
- 参数 data 为数据采取的各种形式,如 ndarray、list、constants。
- index 索引值必须是唯一的和散列的,与数据的长度相同。默认 np.arange(n) 没有索引被传递。
- 参数 dtype 用于数据类型,如果没有,将推断数据类型;
- copy 用于复制数据,默认值为 False。
Pandas Series的创建
在 Pandas 中,创建一个 Series 有几种方法。1) 创建空的Series
创建一个空的基本Series的实现代码为:import pandas as pd s=pd.Series() print(s)运行程序,输出如下:
Series([],dtype:float 64)
2) 从ndarray创建Series
如果数据是 ndarray,则传递的索引必须具有相同的长度。如果没有传递索引值,那么默认的索引将是范围(n),其中 n 是数组长度,即 [0,1,2,3,…,range(len(array))-1]-1]。【实例】利用 ndarray 创建一个Series。
import pandas as pd import numpy as np data = np.array(['a','b','c','d']) s = pd.Series(data) print(s)运行程序,输出如下:
0 a 1 b 2 c 3 d dtype:object这里没有传递任何索引,因此默认情况下,它分配了从 0 到 len(data)-1 的索引,即 0~3。
3) 从字典创建Series
字典(dict)可以作为输入传递,如果没有指定索引,则按排序顺序取得字典键以构造索引。如果传递了索引,索引中与标签对应的数据中的值将被拉出。【实例】从给定的字典中创建一个 Series。
import pandas as pd import numpy as np data = {'a': 0., 'b': 1., 'c': 2.} s = pd.Series(data, index=['b','c','d','a']) print(s)运行程序,输出如下:
b 1.0 c 2.0 d NaN a 0.0 dtype:float 64索引顺序保持不变,缺少的元素使用 NaN(不是数字)填充。
4) 从标量创建Series
如果数据是标量值,则必须提供索引,并将重复该值以匹配索引的长度。【实例】从标量创建一个Series。
import pandas as pd import numpy as np s = pd.Series(5, index=[0, 2, 5, 7]) print(s)运行程序,输出如下:
0 5 2 5 5 5 7 5 dtype:int 64
Pandas Series数据的访问
Series 中的数据可以使用类似于访问 ndarray 中的数据来访问。例如:
import pandas as pd s = pd.Series([1,2,3,4,5], index = ['a','b','c','d','e']) # 检索第一个元素 print(s[0])运行程序,输出如下:
1
以下代码可以实现检索 Series 中的前三个元素。如果 a: 被插入到其前面,则从该索引向前的所有项目被提取。例如,检索两个索引之间的项目(不包括停止索引):
import pandas as pd s = pd.Series([1,2,3,4,5], index = ['a','b','c','d','e']) # 检索前三个元素 print(s[:3])运行程序,输出如下:
a 1 b 2 c 3 dtype:int 64
如果要检索最后三个元素,代码为:
import pandas as pd s = pd.Series([1,2,3,4,5], index = ['a','b','c','d','e']) # 检索最后三个元素 print(s[-3:])运行程序,输出如下:
c 3 d 4 e 5 dtype:int 64
使用Series检索数据(索引)
一个 Series 就像一个固定大小的字典,可以通过索引标签获取和设置值。【实例】使用索引标签检索单个/多个元素。
import pandas as pd s = pd.Series([1,2,3,4,5], index = ['a','b','c','d','e']) # 检索单个元素 print(s['a']) # 检索多个元素 print(s[['a','c','d']])运行程序,输出如下:
1 a 1 c 3 d 4 dtype:int64