1
引言:目标与总体流程
目的:用可重复的步骤判断“房价—就业—通胀”在美国经济危机期间的联动性。
小分段:1) 获取原始时序数据;2) 清洗与对齐时间尺度;3) 描述性分析;4) 建模(VAR/Granger);5) 可视化与报告。
2
准备工具与环境
小分段:1) 推荐工具:Python 3.9+(pandas, statsmodels, matplotlib, seaborn), 或者R(vars, urca);2) 安装示例:pip install pandas statsmodels matplotlib seaborn requests fredapi;3) 获取API:到FRED注册API key,Zillow Research可下载Case-Shiller或Zillow指数列表(如Zillow Home Value)。
3
数据来源与选择指标
小分段:1) 房价:Case-Shiller房价指数、Zillow中位房价;2) 就业:BLS的失业率(Unemployment Rate)与非农就业人数(NFP);3) 通胀:BLS CPI-U或核心CPI(CPI excluding food & energy);4) 频率:以月度为主,若有季度数据需线性插值或改用季度模型。
4
获取数据:FRED与CSV下载实操
小分段:1) FRED示例(Python):from fredapi import Fred; fred=Fred(api_key='你的key'); df_hp=fred.get_series_df('CSUSHPINSA');2) BLS:可通过BLS API或直接下载CSV(搜索 series id 比如 UNRATE, PAYEMS);3) Zillow:若有CSV直接下载并用 pandas.read_csv()
5
数据清洗与对齐步骤
小分段:1) 时间索引统一为DatetimeIndex,df.index = pd.to_datetime(df.index);2) 处理缺失:df.interpolate(method='time')或前向填充,但若大量缺失需慎重;3) 频率对齐:df.resample('M').last()或.mean();4) 转换同比/环比:df['hp_yoy']=df['hp'].pct_change(12)
6
检查平稳性:ADF与差分
小分段:1) 对每序列做ADF检验(from statsmodels.tsa.stattools import adfuller);2) 若非平稳(p>0.05),先取对数再差分:np.log(x).diff();3) 记录差分阶数,统一用于VAR建模。
7
建立描述性分析与相关矩阵
小分段:1) 绘制时序图(matplotlib)观察同步性;2) 计算滚动相关corr = df['hp'].rolling(12).corr(df['unrate']);3) 输出矩阵:df_diff.corr().round(3)并保存为CSV供报告使用。
8
构建VAR模型:步骤详解
小分段:1) 选择变量集合(如 HP_diff, Unemp_diff, CPI_diff);2) 确定滞后阶数:使用AIC/BIC(from statsmodels.tsa.api import VAR; model=VAR(df); model.select_order(12));3) 拟合VAR:res=model.fit(lags);4) 检查残差自相关与稳定性res.test_serial_correlation() 与 res.is_stable()
9
Granger因果检验操作指南
小分段:1) 使用statsmodels.tsa.stattools.grangercausalitytests(data[['hp','cpi']], maxlag=12);2) 解读:若p值小于0.05则存在Granger因果(注意:因果为预测因果,不代表结构性因果);3) 提示:在差分后的平稳序列上检验。
10
脉冲响应与方差分解
小分段:1) 计算脉冲响应:irf = res.irf(10); irf.plot(orth=False);2) 查看方差分解:fevd = res.fevd(10); fevd.summary();3) 解读要点:看当就业或通胀发生冲击时房价的冲击响应幅度与持续期。
11
可视化与报告建议
小分段:1) 必备图表:原序列时序图、差分序列图、滚动相关图、脉冲响应图、方差分解图;2) 导出图表:plt.savefig('figure.png')并生成PDF或HTML报告;3) 写结论章节:数据时间范围、主要发现、稳健性检验结果。
12
实务应用:如何据分析结果做决策
小分段:1) 房地产投资:若结果显示失业率上升领先房价下跌,则应在领先信号出现后审慎入市或对冲;2) 政策建议:若通胀对房价有显著正向影响,央行加息周期可能抑制房价增长;3) 企业战略:开发商可结合就业数据调整推盘节奏与定价。
13
常见问题与风险提示
小分段:1) 数据滞后与样本区间选择会影响结论,建议做滚动窗口检验;2) 结构性断裂(如2008、2020)应单独建模或加入事件虚拟变量;3) 模型假设(线性、同方差)被违反时需考虑非线性模型或GARCH类模型。
14
总结与可复现性清单
小分段:1) 清单:API keys、原始CSV、代码脚本、模型输出、图表;2) 保证复现:在报告中附上数据下载日期与脚本版本;3) 推荐保存格式:代码放Git/Gist,数据存CSV并上传到可访问的云盘。
15
问:在数据有限的情况下,如何判断房价与就业的因果关系?
小分段:答:首先以差分平稳化序列,使用Granger因果检验并报告不同滞后下的p值;其次做滚动窗口Granger检验观察稳定性;若样本短可用Bootstrap提升置信度,并结合经济直觉和事件窗口分析(如失业激增后几个月房价变化)。
16
问:如果房价和通胀同时上升,如何判定哪一方主导?
小分段:答:使用VAR的脉冲响应函数(IRF)和方差分解(FEVD):若对通胀冲击房价的IRF显著且方差分解显示通胀对房价解释比例高,则通胀更可能主导;同时用滞后Granger检验交叉验证结论。
17
问:针对个人(买房者/投资者),如何用本文方法快速落地决策?
小分段:答:1) 关注三项月度指标(房价指数、失业率、CPI);2) 建立一个简单脚本自动下载并计算12个月滚动相关与短期Granger检验;3) 设定规则:若失业率连续3个月上升且Granger显示失业→房价,建议暂停大额购置或谈判更低首付/价格。
来源:数据透视美国经济危机房价走势与就业通胀的联动关系