You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Pandas列计算不符合预期:Season列生成逻辑失效排查

问题原因及解决方法

你的代码条件未生效的核心原因是Month列的数据类型与你用于比较的"1"类型不匹配,导致判断条件永远为False,因此只会执行else分支填充Year列的值。

具体修正方案

根据Month列的实际类型选择对应代码:

1. 如果Month列是数值类型(int/float)

直接用数值1进行比较:

df["season"] = np.where(df["Month"] == 1, df["Year"] - 1, df["Year"])

2. 如果Month列是字符串类型且值为带前导零的格式(如"01")

用匹配的字符串"01"进行比较:

df["season"] = np.where(df["Month"] == "01", df["Year"] - 1, df["Year"])

验证方法

可以先执行以下代码确认Month列的类型和唯一值,快速定位问题:

# 查看Month列的数据类型
print(df["Month"].dtype)
# 查看Month列的所有唯一值
print(df["Month"].unique())

内容的提问来源于stack exchange,提问作者Abartel

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.16 06:42:35