DataFrame 支持算术运算(+、-、/、*),自动按索引对齐,可通过 add()等方法结合 fill_value 处理缺失值;2. 比较运算返回 布尔型 数据,用于条件筛选,如 df[‘A’] > 5;3. 统计运算包括 sum、mean、std 等,默认跳过 NaN,支持 axis 参数与 groupby 结合;4. apply()可对行或列应用函数,map()用于元素级操作。掌握这些可提升数据处理效率,注意对齐与缺失值处理。

在 python 中,DataFrame 是 pandas 库中最常用的 数据结构 之一,适用于处理表格型数据。它支持丰富的运算操作,能高效完成 数据清洗、转换和分析任务。以下是关于 DataFrame 常见运算的总结,涵盖算术运算、比较运算、统计运算及应用函数等核心内容。
算术运算
DataFrame 支持标准的算术操作,如加(+)、减(-)、乘(*)、除(/)和幂(**)。这些操作默认按列对齐,自动处理索引匹配问题。
- 两个 DataFrame 进行运算时,pandas 会基于行索引和列标签对齐数据,未对齐的部分结果为 NaN
- DataFrame 与标量运算时,操作会广播到每个元素
- 支持使用方法形式如 add()、sub()、mul()、div(),可指定 fill_value 处理缺失值
示例:
df1 + df2
df * 2
df.add(other_df, fill_value=0)
比较运算
比较运算返回布尔型 DataFrame,常用于条件筛选。
立即学习“Python 免费学习笔记(深入)”;
- 支持 ==、!=、>、=、
- 结果是相同形状的 DataFrame,元素为 True 或 False
- 可用于构建掩码,配合布尔索引提取子集
示例:
df > 5
df[df[‘A’] > df[‘B’]]
统计运算
DataFrame 提供多种内置统计方法,多数默认跳过缺失值。
- sum():求和,axis= 0 表示按列计算,axis= 1 按行
- mean()、median():均值和中位数
- std()、var():标准差和方差
- min()、max()、quantile():极值与分位数
- describe():生成描述性统计摘要
- count():非空值数量
这些方法可配合 groupby 实现分组统计。
应用自定义函数
使用 apply() 方法可在行或列上应用函数。
- df.apply(func, axis=0):对每列应用 func
- df.apply(func, axis=1):对每行应用 func
- func 可以是 Lambda 表达式或自定义函数
- applymap() 已弃用,推荐使用 map() 或 apply() 代替元素级操作
示例:
df.apply(lambda x: x.max() – x.min(), axis=1)
df[‘A’].map(lambda x: x * 2)
基本上就这些。掌握这些运算方式,能大幅提升数据处理效率。注意对齐规则和缺失值处理,避免意外结果。


