pandas Series 基本概念

pandas Series 是一种一维标记数组,能够存储任意数据类型(整数、字符串、浮点数、Python对象等)。每个元素对应一个标签(索引),类似于字典结构,但提供更丰富的操作功能。

创建 Series

通过列表或字典直接创建:

import pandas as pd

# 通过列表创建(默认整数索引)
s1 = pd.Series([1, 3, 5, 7])
print(s1)

# 通过字典创建(键自动转为索引)
s2 = pd.Series({'a': 10, 'b': 20, 'c': 30})
print(s2)

常用属性

  • values:返回 Series 的数据部分(NumPy 数组)。
  • index:返回索引对象(可修改)。
  • dtype:返回数据类型。
  • size:返回元素数量。
s = pd.Series([10, 20, 30], index=['x', 'y', 'z'])
print(s.values)  # 输出 [10 20 30]
print(s.index)   # 输出 Index(['x', 'y', 'z'], dtype='object')

数据操作

索引与切片
支持标签索引和位置索引:

s = pd.Series([1, 2, 3, 4], index=['a', 'b', 'c', 'd'])
print(s['b'])    # 标签索引,输出 2
print(s[1:3])    # 位置切片,返回 b 和 c 对应的值

运算
Series 支持矢量化运算(逐元素操作):

s1 = pd.Series([1, 2, 3])
s2 = pd.Series([4, 5, 6])
print(s1 + s2)   # 输出 5, 7, 9

缺失值处理

使用 NaN 表示缺失值,可通过 isna()dropna() 检测/删除:

s = pd.Series([1, None, 3])
print(s.isna())       # 检查缺失值
print(s.dropna())     # 删除缺失值
print(s.fillna(0))    # 填充缺失值为 0

应用函数

通过 apply() 对每个元素执行自定义函数:

s = pd.Series([1, 2, 3])
print(s.apply(lambda x: x * 2))  # 输出 2, 4, 6

统计方法

内置常用统计函数:

  • mean():平均值
  • sum():求和
  • max()/min():最大值/最小值
  • std():标准差
s = pd.Series([1, 2, 3, 4])
print(s.mean())  # 输出 2.5

示例场景

数据过滤
通过布尔索引筛选数据:

s = pd.Series([10, 20, 30, 40])
print(s[s > 25])  # 输出 30 和 40

Logo

Agent 垂直技术社区,欢迎活跃、内容共建。

更多推荐