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

相关推荐
程序员阿鹏12 小时前
如何保证写入Redis的数据不重复
java·开发语言·数据结构·数据库·redis·缓存
历程里程碑13 小时前
滑动窗口秒解LeetCode字母异位词
java·c语言·开发语言·数据结构·c++·算法·leetcode
Helibo4413 小时前
2025年12月gesp3级题解
数据结构·c++·算法
靠沿14 小时前
Java数据结构初阶——堆与PriorityQueue
java·开发语言·数据结构
禾叙_14 小时前
HashMap
java·数据结构·哈希算法
zcbdandan14 小时前
JNA内存对齐导致的结构体数组传输错误
数据结构·算法
持梦远方15 小时前
持梦行文本编辑器(cmyfEdit):架构设计与十大核心功能实现详解
开发语言·数据结构·c++·算法·microsoft·visual studio
im_AMBER16 小时前
Leetcode 90 最佳观光组合
数据结构·c++·笔记·学习·算法·leetcode
点云SLAM17 小时前
boost中graph_traits和adjacency_list 的内存布局以及最小图示例
数据结构·数据库·图论·boost库·最小图·链接矩阵·graph_traints技术
自信1504130575917 小时前
数据结构初阶之单链表
c语言·数据结构