1. Pandas Series核心概念解析
Pandas作为Python数据分析的利器,Series是其最基础的数据结构之一。简单来说,Series就是一维带标签的数组,可以把它想象成Excel表格中的一列数据,但功能要强大得多。每个Series由两个核心部分组成:索引(index)和值(values),这种设计让数据操作既直观又高效。
在实际工作中,我处理过各种规模的数据集,从几百条的小数据到上千万条的大数据,Series的表现都相当稳定。特别是在数据清洗和特征工程阶段,Series的各种方法能帮我们快速完成数据转换。比如处理传感器数据时,用Series的rolling()方法做滑动窗口计算,几行代码就能实现复杂的统计运算。
需要模型API调用? 免费领10W Token,多模型网关一键接入 Claude、DeepSeek 等主流模型。
2. Series创建与基础操作
2.1 多种创建方式对比
创建Series至少有5种常用方法,每种适用不同场景:
python复制# 从列表创建(最基础)
s1 = pd.Series([1, 3, 5, np.nan, 6, 8])
# 从字典创建(自动使用键作为索引)
s2 = pd.Series({'a': 1, 'b': 2, 'c': 3})
# 从ndarray创建(高性能场景)
data = np.random.randn(5)
s3 = pd.Series(data, index=['a', 'b', 'c', 'd', 'e'])
# 从标量创建(特殊场景)
s4 = pd.Series(5, index=['a', 'b', 'c'])
# 从其他Series创建(带拷贝)
s5 = pd.Series(s2)
经验之谈:从字典创建时,如果额外指定index参数,会按新索引重组数据,原字典中没有的索引位置会显示为NaN。这个特性在数据对齐时特别有用。
2.2 索引与切片技巧
Series的索引方式灵活多样,新手容易混淆:
python复制s = pd.Series([10, 20, 30, 40], index=['a', 'b', 'c', 'd'])
# 标签索引
s['b'] # 20
# 位置索引
s[1] # 20
# 切片(注意与列表切片的区别)
s['a':'c'] # 包含末端
s[0:2] # 不包含末
