单位 3 / 11

数据清理、转换和探索性分析(支持 Python/pandas)

收益:

  • 能够清理原始经济数据(缺失观察、单位混乱、频率不匹配)并在人工智能的帮助下为分析做好准备
  • 能够将标准经济转换(例如实际名义转换、指数化、增长率、季节性调整)以代码形式打印到人工智能中并进行手动验证
  • 能够通过探索性数据分析(汇总统计、分布、异常值、相关性)识别数据并批判性地阅读人工智能摘要

经济数据很少可供分析。在您从 TURKSTAT 下载的表格中,缺少一些月份,一列是带有千个括号的文本,汇率采用土耳其语格式,如“1.234,56”,一个系列是每月,另一个是季度。经济学家的大部分时间不是花在分析上,而是花在为分析准备数据上。这就是人工智能成为真正的低风险加速器的地方:它建议清理步骤、编写 pandas(Python 的数据处理库)、编纂标准经济转型。但这个单元也有一个不变的规则:你阅读人工智能编写的每一个转换,并在至少一次观察中手动验证它。如果实际名义周期的基础不对,整个分析就会悄然衰退。

清洁:有哪些问题,如何解决?

经济数据及其逻辑中最常见的问题:

  • 观察不完整。一个月/季度是空的。解决方案取决于上下文:如果实际不存在,则留空;如果存在技术差距,就会进行仔细的插补——但制造之间的界限很窄。
  • 单位和格式的混乱。文本“12.345.6”必须转换为数字;百万/十亿应该保持一致。
  • 频率不匹配。为了合并月度和季度系列,需要进行汇总(月度到季度)——是平均、总计还是期末取决于指标的性质(存量/流量区别)。
  • 离群值(极端值)。如果观察结果严重偏离:这是真实事件(危机、价格上涨)还是数据错误?删除之前就明白了。
  • 日期对齐。不同系列的日期格式和期间定义是同步的。
注意:填补缺失数据看似无辜,但却是一个经济决策。用“邻近月份的平均值”填充危机月份意味着从分析中删除该危机。在填写之前,先问“为什么会存在这个差距?”回答问题。

标准经济转型

经济学家日常技能中的变换及其定义:

  • 名义→实际。价格影响调整:实际价值=名义价值/价格指数×100。平减指数(调整指数)的基年决定结果的基数。
  • 索引。重新调整系列,使选定的周期 = 100;它对于比较不同尺寸的系列很有用。
  • 增长率。年度:(本期同期/去年-1)×100。周期率和年化率是不同的东西;混淆是一个常见的错误。
  • 季节性修正。净化常规季节性影响(夏季旅游、节假日);原始系列和季节性调整后的系列讲述了不同的故事。
  • 移动平均线。消除噪音并使趋势可见。
  • 对数和差分。检查增长动态和平稳性(将在时间序列单元中加深)。
提示:每次转换时,您都会被问到“单位和基础发生了什么?”问。实数级数的基数是平减指数的基数;索引系列的基础是您选择的期间。把这些写下来可以防止将来出现错误。

探索性数据分析 (EDA)

在将数据输入模型之前有必要对其进行识别。探索性数据分析 (EDA) 包括:汇总统计数据(平均值、中位数、标准差、最小值-最大值)、分布形状、随时间变化的过程、异常值和系列之间的相关性。 AI快速生成这些步骤的代码;你的工作是用经济学的眼光来解读输出:“这个平均值合理吗?这种相关性是巧合还是已知的关系?”

注意:相关性在这里只是一种识别手段,而不是因果关系的证明。两个系列同时发生的事实(例如,冰淇淋销售和溺水事件——两者都是由夏季引发的)并不一定表明其中一个会导致另一个。我们将在第 7 单元中加深这种区别。

三个迷你箱子

情况 1 — 平减指数基数不正确。一位分析师让人工智能编写代码来实现工资序列。代码有效,结果看起来合理 - 但分析师在“计算”步骤中手动计算了 2020 年,但它不起作用。问题:人工智能使用以2003年=100为基数的平减指数,并要求以2015年价格计算工资序列;基础是相互冲突的。通过一行修复修复了代码,整个系列就位了。

情况 2 — 无声音量错误。某机构减少了千美元的出口数据和百万美元的进口数据。当人工智能把“外贸平衡”的两者去掉后,结果就是荒唐的赤字。 EDA 中的最小-最大视图揭示了错误:两个系列的数量级相差 1000 倍。一旦单位均衡,平衡就正确了。

情况 3 — 不删除异常值。系列中的一个月非常低。 AI 建议“异常值,让我们清理它”。分析师调查:当月由于自然灾害,生产实际上已停止。价值是真实的;删除它会扭曲历史。它没有被删除,而是被加了脚注。人工智能的“明确”建议并没有被盲目遵循。

转换验证表

转换

配方精华

手动检查点

实现

名义/价格指数×100

平减指数基数 = 结果基数?

年增长率

(t / t-12月−1)×100

在纸上计算一个周期

索引

系列/基期×100

基期值是100吗?

每月→每季

流量:收集/库存:期末

正确的收集方法?

移动平均线

最后n个周期的平均值

窗口长度是否正确?

四个可复制模板

1)清洁计划:

我有这个原始数据:[列和样本行]。制定清理计划以准备分析:缺失值、单位/格式问题、日期对齐、频率对齐、可能的异常值。用一句话解释为什么每一步都是必要的。暂时不要写代码;让我先确认一下计划。

2)pandas清理代码:

按照我批准的计划编写pandas代码。让代码用注释行指示每一步的作用;它打印转换后的行数和缺失值。不要默默地删除任何观察结果;报告您删除的每一行。

3)实现(可验证):

用[价格指数]实现这个名义系列。使用平减指数时,写清楚平减指数的基准年;指定结果系列的基础是什么。逐步向我展示单个时期内的帐户,以便我可以手动验证。

4)探索性分析总结:

为以下清理后的数据编写探索性分析代码:汇总统计、时间序列图、离群值扫描和相关矩阵。在解释结果时,请明确您发现的相关性不是因果关系,并列出对我来说很突出的 3 点。

弱提示/强提示

弱提示:

清除该数据。

人工智能根据假设行事,但不知道要清理什么;您可以删除观察结果,更改单位,您不会注意到。

强力提示:

本次月度外贸数据中,出口单位为“千美元”,进口单位为“百万美元”。使两者等于“百万美元”,标记缺失的月份但不填写,将日期与月底对齐。打印每一步有多少行受到影响;静默删除任何行。然后以我可以手动检查的方式显示单月的余额。

常见错误

  • 运行转换代码而不读取它。错误的基础/单位会悄悄破坏整个分析。
  • 不假思索地填写缺失的数据。用平均值消除危机/灾难时期。
  • 自动丢弃异常值。将真实事件误认为数据错误。
  • 令人困惑的季节性和年度增长。两者尺寸不同。
  • 频率组合不正确。收集库存系列并将其作为流程进行处理。
  • 将 EDA 中的相关性误认为因果关系。将识别工具误认为是证据。

总之

数据清理和转换是经济分析中看不见但决定性的 80%。人工智能极大地加速了这项机械工作;但您需要阅读每个清理步骤和每个转换,并手动验证至少一个观察结果。平减指数基数、单位、频率和异常值决策都是经济决策,不能盲目地交给人工智能。探索性分析引入了数据,但相关性并不等于因果关系。

应用任务

下载实际的原始系列(例如每月 CPI 和名义工资/收入系列)。使用第一个模板创建清洁计划,使用第二个模板生成代码,并使用第三个模板实现该系列。然后在纸上计算出单个时期的真实价值,并与人工智能的输出进行比较。如果发现不匹配,请诊断并纠正其来源(基础/单位)并记下进度。

清单

  • [ ] 我在编写代码之前审查并批准了清理计划。
  • [ ] 我的每一行都被人工智能报告的删除/更改了;没有静默删除。
  • [ ] 填写缺失数据时您可能会问“为什么是空的?”我回答了问题。
  • [ ] 我调查了异常值是真实事件还是数据错误。
  • [ ] 在实现中,我验证了平减指数基数和结果基数是否匹配。
  • [ ] 我手动重新计算了至少一个周期的换算。
  • [ ] 我没有将 EDA 中的相关性作为因果关系呈现。