数据处理库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深度学习与企业级项目实战》,获出版社和作者授权发布。

相关推荐
sin_hielo5 分钟前
leetcode 3314(位运算,lowbit)
数据结构·算法·leetcode
Remember_9936 分钟前
【数据结构】深入理解排序算法:从基础原理到高级应用
java·开发语言·数据结构·算法·spring·leetcode·排序算法
鱼跃鹰飞10 分钟前
Leetcode会员专享题:426.将二叉搜索树转换为排序的双向链表
数据结构·算法·leetcode·链表·深度优先
漫随流水10 分钟前
leetcode回溯算法(39.组合总和)
数据结构·算法·leetcode·回溯算法
kklovecode11 分钟前
数据结构---链表 & 栈
c语言·数据结构·算法
苦藤新鸡16 分钟前
20.右旋转图片
数据结构·算法·leetcode·力扣
小龙报35 分钟前
【初阶数据结构】解锁顺序表潜能:一站式实现高效通讯录系统
c语言·数据结构·c++·程序人生·算法·链表·visual studio
历程里程碑38 分钟前
Linux 1 指令(1)入门:6大基础指令详解
linux·运维·服务器·c语言·开发语言·数据结构·c++
-To be number.wan12 小时前
B 树 vs B+ 树:为什么 MySQL 用 B+ 树,而不是 B 树?
数据结构
杨间12 小时前
《排序算法全解析:从基础到优化,一文吃透八大排序!》
c语言·数据结构·排序算法