数据处理库Pandas的数据结构Series

Series是一种一维数据结构,每个元素都带有一个索引,与一维数组的含义相似,其中索引可以为数字或字符串,如图3-1所示。

Series 对象包含两个主要的属性:index 和 values,分别为上例中的左右两列。因为传给构造器的是一个列表,所以 index 的值是从 0 起递增的整数,如果传入的是一个类字典的键-值对结构,就会生成 index-value 对应的 Series;或者在初始化的时候以关键字参数显式指定一个 index 对象。

示例代码如下,Series类似于一维数组,但Series最大的特点就是可以使用标签索引。ndarray也有索引,但它是位置索引,Series的标签索引使用起来更加方便。

复制代码
import pandas as pd
import numpy as np
mylist = list('abced')
myarr = np.arange(5)
ser1 = pd.Series(mylist)
ser2 = pd.Series(myarr)
ser3 = pd.Series([1,3,6],index=['a','b','c'])
print(ser1)
print(ser2)
print(ser3)
print(ser3[['c','b']])

运行结果如图3-2所示。

注意:Series 的 index 和 values 的元素之间虽然存在对应关系,但这与字典的映射不同。index 和 values 实际仍为互相独立的 ndarray 数组,因此 Series 对象的性能完全没问题。

本文节选自《PyTorch深度学习与企业级项目实战》,获出版社和作者授权发布。

相关推荐
Fanxt_Ja3 天前
【LeetCode】算法详解#15 ---环形链表II
数据结构·算法·leetcode·链表
今后1233 天前
【数据结构】二叉树的概念
数据结构·二叉树
唐古乌梁海3 天前
【pandas】-4- 索新增列,assign,applay,map使用
pandas
散1124 天前
01数据结构-01背包问题
数据结构
消失的旧时光-19434 天前
Kotlinx.serialization 使用讲解
android·数据结构·android jetpack
Gu_shiwww4 天前
数据结构8——双向链表
c语言·数据结构·python·链表·小白初步
苏小瀚4 天前
[数据结构] 排序
数据结构
折翼的恶魔4 天前
数据分析:排序
python·数据分析·pandas
睡不醒的kun4 天前
leetcode算法刷题的第三十四天
数据结构·c++·算法·leetcode·职场和发展·贪心算法·动态规划
吃着火锅x唱着歌4 天前
LeetCode 978.最长湍流子数组
数据结构·算法·leetcode