Python Pandas Series

17 Mar 2025 | 4 分钟阅读

Pandas Series 可以定义为能够存储各种数据类型的一维数组。 我们可以使用“series”方法轻松地将列表、元组和字典转换为 series。 Series 的行标签称为索引。 Series 不能包含多列。 它具有以下参数

  • data: 它可以是任何列表、字典或标量值。
  • index: 索引的值应该是唯一的且可散列的。 它必须与数据长度相同。 如果我们没有传递任何索引,将使用默认值 np.arrange(n)
  • dtype: 它指的是 series 的数据类型。
  • copy: 它用于复制数据。

创建 Series

我们可以通过两种方式创建 Series

  1. 创建空 Series
  2. 使用输入创建 Series。

创建空 Series

我们可以在 Pandas 中轻松创建一个空 series,这意味着它不会有任何值。

用于创建空 Series 的语法

下面的示例创建一个 Empty Series 类型的对象,该对象没有值,并且具有默认的数据类型,即 float64

示例

输出

Series([], dtype: float64)

使用输入创建 Series

我们可以通过使用各种输入来创建 Series

  • Array
  • 字典(Dict)
  • 标量值

从数组创建 Series

在创建 Series 之前,首先,我们必须导入 numpy 模块,然后在程序中使用 array() 函数。 如果数据是 ndarray,则传递的索引必须具有相同的长度。

如果我们没有传递索引,那么默认情况下会传递索引 range(n),其中 n 定义了数组的长度,即 [0,1,2,....range(len(array))-1]。

示例

输出

0    P
1    a
2    n
3    d
4    a
5    s
dtype: object

从 dict 创建 Series

我们也可以从 dict 创建 Series。 如果字典对象作为输入传递,并且没有指定索引,则字典的键将按排序顺序排列以构造索引

如果传递了索引,则对应于索引中特定标签的值将从 字典 中提取。

输出

x     0.0
y     1.0
z     2.0
dtype: float64

使用标量创建 Series

如果我们使用标量值,则必须提供索引。 标量值将重复以匹配索引的长度。

输出

0      4
1      4
2      4
3      4
dtype: int64

从 Series 访问带位置的数据

创建 Series 类型的对象后,您可以访问其索引、数据,甚至单个元素。

Series 中的数据可以类似于 ndarray 中的数据一样访问。

输出

1 

Series 对象属性

Series 属性定义为与 Series 对象相关的任何信息,例如大小、数据类型等。以下是一些可用于获取有关 Series 对象信息的属性

属性描述
Series.index定义 Series 的索引。
Series.shape它返回数据的形状的元组。
Series.dtype它返回数据的数据类型。
Series.size它返回数据的大小。
Series.empty如果 Series 对象为空,则返回 True,否则返回 false。
Series.hasnans如果存在任何 NaN 值,则返回 True,否则返回 false。
Series.nbytes它返回数据中的字节数。
Series.ndim它返回数据中的维数。
Series.itemsize它返回项目的 datatype 的大小。

检索 Series 对象的索引数组和数据数组

我们可以使用属性索引和值来检索现有 Series 对象的索引数组和数据数组。

输出

RangeIndex(start=0, stop=4, step=1)
[2 4 6 8]
Index(['a', 'b', 'c'], dtype='object')
[11.2 18.6 22.5]

检索类型 (dtype) 和类型大小 (itemsize)

您可以使用具有 Series 对象的属性 dtype 作为 <objectname> dtype 来检索 series 对象的单个元素的数据类型,您可以使用 itemsize 属性来显示分配给每个数据项的字节数。

输出

int64
8
float64
8

检索形状

Series 对象的形状定义了元素的总数,包括缺失值或空值 (NaN)。

输出

(4,)
(3,)

检索维度、大小和字节数

输出

1 1
4 3
32 24

检查空值和 NaN 值的存在

要检查 Series 对象是否为空,您可以使用 empty 属性。 同样,要检查 series 对象是否包含某些 NaN 值,您可以使用 hasans 属性

示例

输出

False   False   True
True    False   False
4   3
3   3

Series 函数

Series 中使用的一些函数如下所示

函数描述
Pandas Series.map()映射来自具有公共列的两个系列的值。
Pandas Series.std()计算给定数字集、DataFrame、列和行的标准差。
Pandas Series.to_frame()将 series 对象转换为 dataframe。
Pandas Series.value_counts()返回一个 Series,其中包含唯一值的计数。

下一篇主题Pandas Series.map()