在 Pandas 中,Series
是一种一维的带标签数组,它能够保存任何数据类型(如整数、字符串、浮点数、Python 对象等)。Series
由两个主要部分组成:索引(index)和值(values)。下面将从多个方面对 Series
进行详细介绍。
可以使用多种方式创建 Series
,下面介绍几种常见的方法。
import pandas as pd
data = [10, 20, 30, 40]
s = pd.Series(data)
print(s)
在上述代码中,我们使用一个列表 data
创建了一个 Series
对象 s
。如果没有指定索引,Pandas 会默认使用从 0 开始的整数作为索引。
data = {'a': 10, 'b': 20, 'c': 30}
s = pd.Series(data)
print(s)
当使用字典创建 Series
时,字典的键会成为 Series
的索引,字典的值会成为 Series
的数据。
data = [10, 20, 30]
index = ['x', 'y', 'z']
s = pd.Series(data, index=index)
print(s)
这里我们手动指定了索引,使得 Series
的索引不再是默认的整数索引。
可以通过索引来访问 Series
中的数据。
s = pd.Series([10, 20, 30, 40])
print(s[2])
这里使用整数位置索引来访问 Series
中的元素,索引从 0 开始。
data = {'a': 10, 'b': 20, 'c': 30}
s = pd.Series(data)
print(s['b'])
如果 Series
有标签索引,可以使用标签来访问元素。
s = pd.Series([10, 20, 30, 40, 50])
print(s[1:4])
可以使用切片操作来访问 Series
中的一部分数据。
Series
有一些常用的属性,用于获取其相关信息。
s = pd.Series([10, 20, 30])
print(s.values)
values
属性返回一个包含 Series
所有值的 NumPy 数组。
s = pd.Series([10, 20, 30], index=['a', 'b', 'c'])
print(s.index)
index
属性返回 Series
的索引对象。
s = pd.Series([10, 20, 30])
print(s.dtype)
dtype
属性返回 Series
中数据的类型。
Series
支持各种数学运算。
s1 = pd.Series([1, 2, 3])
s2 = pd.Series([4, 5, 6])
result = s1 + s2
print(result)
Series
之间的运算会按照索引进行元素级的操作。
s = pd.Series([1, 2, 3])
result = s * 2
print(result)
Series
可以与标量进行广播运算,即每个元素都与标量进行相应的运算。
在 Series
中,缺失值通常用 NaN
(Not a Number)表示。
import numpy as np
data = [10, np.nan, 30]
s = pd.Series(data)
print(s.isnull())
isnull()
方法用于检查 Series
中的元素是否为缺失值,dropna()
方法用于删除包含缺失值的元素,fillna()
方法用于填充缺失值。
Series
提供了许多统计计算方法。
s = pd.Series([10, 20, 30, 40, 50])
print(s.mean())
这些方法可以方便地对 Series
中的数据进行统计分析。
综上所述,Series
是 Pandas 中一个非常基础且重要的数据结构,掌握其创建、访问、运算和处理等操作,对于数据分析和处理非常有帮助。