Pandas 的 API 很多,但日常操作可以围绕几个稳定概念组织。把它只当作二维数组,会自然地写出大量逐行循环;把它理解为带索引的列式数据模型,选择、筛选、变换和合并就会变得统一。
Series 与 DataFrame
Series 是带索引的一维数据;DataFrame 可以看作共享行索引的一组 Series。列名描述特征,行描述观测,索引负责对齐。多数操作返回新对象,是否原地修改需要明确确认。
选择与筛选
选择一列通常得到 Series,选择多列得到 DataFrame。涉及行或位置时使用 loc 与 iloc。筛选则分成两步:先由条件生成布尔掩码,再用掩码保留符合条件的观测。
mask = df["shield"].eq(8)
result = df.loc[mask, ["name", "shield"]]
变换、规约与合并
map 作用于元素,apply 作用于序列或轴,规约把一组值收敛成结果。concat 更适合同构数据的纵向组合,merge 则依据键连接不同特征。groupby 延迟建立分组,并把后续聚合或变换应用到每一组。
把这些操作理解为数据流,比背诵零散 API 更容易迁移到新的分析问题。
