看过来
《pandas 教程》 持续更新中,提供建议、纠错、催更等加作者微信: gr99123(备注:pandas教程)和关注公众号「盖若」ID: gairuo。跟作者学习,请进入 Python学习课程。欢迎关注作者出版的书籍:《深入浅出Pandas》 和 《Python之光》。
(编码题)把“实际”与“预测”销售额按规则合并:实际优先,缺失用预测。
运营部每天 18:00 会拿到一份 实际销售额,但偶尔缺数。 同时系统每天 09:00 会给出 预测销售额。
现在要把两张表合并,规则:
import pandas as pd
# 实际销售额(可能缺失)
actual = pd.Series([1000, None, 900, None, 1200],
index=pd.date_range("2024-08-01", periods=5),
name="实际")
# 预测销售额
forecast = pd.Series([950, 1050, 880, 1100, 1150],
index=pd.date_range("2024-08-01", periods=5),
name="预测")
用 一行 combine()
按上述规则生成新 Series 最终销售额
,并打印结果。
代码如下:
final = actual.combine(forecast, lambda a, f: a if pd.notna(a) else f)
print(final)
输出:
2024-08-01 1000.0
2024-08-02 1050.0
2024-08-03 900.0
2024-08-04 1100.0
2024-08-05 1200.0
dtype: float64
(完)
更新时间:2025-08-28 14:15:23 标签:pandas python 销售额 合并