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

如何通过美国劳工统计局(BLS)API获取数据的年度百分比变化

计算BLS时间序列的年度百分比变化

核心方案:利用Pandas内置方法高效计算

你的数据已经整理成按时间升序排列的DataFrame,直接使用Pandas的pct_change()方法即可实现年度同比计算——该方法会计算当前值与指定周期前数值的百分比变化,指定periods=12对应去年同月的数据。

在现有代码末尾添加以下代码:

# 计算年度百分比变化并转为百分比格式(保留2位小数)
df['annual_pct_change'] = df[series['id']].pct_change(periods=12) * 100
df['annual_pct_change'] = df['annual_pct_change'].round(2)

# 查看结果(前12行因无去年数据会显示NaN,从第13行开始有有效数值)
print(df.tail())

关于你之前尝试的问题

你调用的i['calculations']字段需要在API请求时添加calculations=true参数才会返回,且BLS API默认不提供年度同比的计算结果。相比依赖API返回的固定计算值,用Pandas本地处理更灵活,还能自定义精度和格式。

可选:手动实现计算逻辑

如果想手动完成计算(效果和内置方法一致),可以用shift()方法获取去年同月的数据:

# 手动计算:(当前值 - 去年同月值) / 去年同月值 × 100
df['annual_pct_change_manual'] = (df[series['id']] - df[series['id']].shift(12)) / df[series['id']].shift(12) * 100
df['annual_pct_change_manual'] = df['annual_pct_change_manual'].round(2)

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.06 10:15:26