看过来
《pandas 教程》 持续更新中,提供建议、纠错、催更等加作者微信: gr99123(备注:pandas教程)和关注公众号「盖若」ID: gairuo。跟作者学习,请进入 Python学习课程。欢迎关注作者出版的书籍:《深入浅出Pandas》 和 《Python之光》。
(编码题)仓库 4 条包裹记录:
import pandas as pd
df = pd.DataFrame({
"包裹号": ["P1", "P2", "P3", "P4"],
"重量_kg": [0.5, 1.2, 0.8, 1.5],
"体积_m3": [0.04, 0.12, 0.09, 0.11]
})
写外部函数 calc_fee(row)
,然后用 一行 apply(axis=1)
新增列 总费用
,并打印结果。
代码如下:
def calc_fee(row):
base = 8 if row['重量_kg'] <= 1 else 12
extra = 5 if row['体积_m3'] > 0.1 else 0
return base + extra
df['总费用'] = df.apply(calc_fee, axis=1)
print(df)
输出:
包裹号 重量_kg 体积_m3 总费用
0 P1 0.5 0.04 8
1 P2 1.2 0.12 17
2 P3 0.8 0.09 8
3 P4 1.5 0.11 17
(完)
更新时间:2025-08-24 20:23:15 标签:pandas python apply 函数 运费