{
 "_note": "预注册视图：以下内容逐字取自 claims.json，claims.json 在任何数据进入分析之前写死并锁指纹（work/results/PREREG.sha256）。本文件不含任何跑完之后产生的内容。",
 "written_before_analysis_at": "2026-09-13T19:10:00Z",
 "prereg_core_sha256": "87c43edd01c6ecc700f31ca73f201d0e36d446fd27774fdba4a709c3d15634b3",
 "question": "在山东 7 个沿海城市 2021–2023 的面板上，把常住人口与第二产业增加值（及年份）的影响先扣掉之后，旅游强度与近岸海域优良水质点位占比之间还剩下什么方向的净关联，这个方向能不能与随机置换出来的零分布区分开。",
 "scope_detail": "山东省 7 个沿海城市（青岛、烟台、威海、潍坊、日照、东营、滨州）2021–2023 年；自变量=旅游接待人次与旅游收入；控制变量=常住人口与第二产业增加值；目标变量=近岸海域一/二类水质点位占比；只做残差交互分析，输出净影响方向图与初步结论；数据用公开统计年鉴与生态环境公报。",
 "dataset": "山东省 7 个沿海城市（青岛、烟台、威海、潍坊、日照、东营、滨州）2021–2023 年的公开统计公报与生态环境公报；匿名可直接下载，不使用任何申请制或需注册的库。",
 "sample_size_is_the_main_risk": {
  "planned_n": "7 个城市 × 3 年 = 最多 21 个观测；扣掉控制变量与年份后残差自由度约 15",
  "consequence": "这个量级做不了因果推断，也支撑不了带星号的系数表。本轮只报方向、效应量区间和「能不能与零模型区分」，并同时给出这把尺子在 n=21 下的检出率曲线，让需求方看到多大的真实效应才有机会被看见。",
  "must_be_stated_where": [
   "REPORT.md 第 0 节",
   "SCOPE.md",
   "交付信正文"
  ]
 },
 "data_rules": {
  "sources_must_be": "匿名游客可直接下载的公开发布：山东省及各市统计年鉴/国民经济和社会发展统计公报、山东省及各市生态环境状况公报、中国环境统计年鉴。申请制、需注册、需付费的库一律不用。",
  "no_substitution": "拿不到就如实说拿不到。不许用估算值、插值、增长率反推冒充实测值，不许换成别的省份交差。",
  "missing_handling": "缺任一字段的 city-year 观测整体剔除，剔除清单进报告。",
  "caliber_consistency": "同一城市三年内指标口径必须一致（例如全是「接待国内外游客」或全是「国内游客」）；不一致的城市在该指标上按缺失处理，进主分析剔除清单，并另做一次把它们加回来的敏感性分析，两个结果都报。",
  "y_caliber": "目标变量优先取「近岸海域国控点位水质优良（一、二类）比例」。若入选城市之间 y 的口径无法统一，主结论必须降级为仅方向性提示，并在报告中点名是哪几个城市、差在哪。",
  "provenance": "每一个数字都要能在随包交付的原始来源文件里原文找到，逐条记进 work/data/data_provenance.json（含 URL、本地文件、原文片段）。"
 },
 "method": {
  "step_1": "y ~ 常数 + ln(常住人口) + ln(第二产业增加值) + 年份固定效应，取残差 ry",
  "step_2": "ln(旅游指标) ~ 同一组控制变量，取残差 rt",
  "step_3": "ry 对 rt 回归，斜率 β 即净影响方向（Frisch–Waugh–Lovell 残差交互）",
  "statistic": "偏相关 r = corr(rt, ry) 作为检验统计量（无量纲，置换之间可比）；β 与「旅游指标每翻一倍对应的百分点变化」同时照报，用来说方向和量级。",
  "why_not_beta_as_statistic": "置换会打断旅游指标与控制变量的相关，被置换变量的残差方差系统性偏大，β=cov/var 的分母随之变化、置换之间不可比。",
  "seeds": [
   0,
   1,
   2
  ],
  "n_permutations_per_seed": 5000,
  "n_bootstrap_per_seed": 2000,
  "bootstrap_scheme": "按城市整块重抽（7 个簇）。簇数只有 7，区间当量级参考，不当精确置信区间。",
  "compute": "只烧 CPU，不上 GPU。"
 },
 "arms": [
  {
   "name": "controls_only",
   "is_baseline": true,
   "what": "平凡基线：只有常住人口、第二产业增加值与年份固定效应的模型。旅游指标要证明自己，得比它多解释一点东西（ΔR²）。",
   "data_space": "山东 7 个沿海城市 2021–2023 city-year 面板：y=近岸海域优良水质点位占比(%)",
   "truth_source": "生态环境公报实测水质 + 统计公报实测社会经济数据（均为公开发布）"
  },
  {
   "name": "permuted_tourism_null",
   "is_baseline": true,
   "what": "零模型：把旅游指标在城市-年份之间随机置换后，重做完全一样的残差交互分析，5000 次 × 3 个种子。观测到的偏相关落进这条零分布里，就说明这个方向和随机没区别。",
   "data_space": "山东 7 个沿海城市 2021–2023 city-year 面板：y=近岸海域优良水质点位占比(%)",
   "truth_source": "生态环境公报实测水质 + 统计公报实测社会经济数据（均为公开发布）"
  },
  {
   "name": "net_effect_visitors",
   "is_baseline": false,
   "what": "实验臂一：ln(旅游接待人次) 的净影响方向",
   "data_space": "山东 7 个沿海城市 2021–2023 city-year 面板：y=近岸海域优良水质点位占比(%)",
   "truth_source": "生态环境公报实测水质 + 统计公报实测社会经济数据（均为公开发布）"
  },
  {
   "name": "net_effect_revenue",
   "is_baseline": false,
   "what": "实验臂二：ln(旅游收入) 的净影响方向",
   "data_space": "山东 7 个沿海城市 2021–2023 city-year 面板：y=近岸海域优良水质点位占比(%)",
   "truth_source": "生态环境公报实测水质 + 统计公报实测社会经济数据（均为公开发布）"
  },
  {
   "name": "ruler_negative_control",
   "is_baseline": true,
   "what": "负对照：因变量换成与一切无关的纯噪声，真实偏相关 = 0。这把尺子必须测不出来。",
   "data_space": "同一控制结构下的合成因变量（真实偏相关已知）",
   "truth_source": "构造时写死的真实偏相关（0）"
  },
  {
   "name": "ruler_positive_control",
   "is_baseline": false,
   "what": "正对照：因变量换成注入了真实偏相关 0.6 的合成变量。这把尺子必须测得出来，否则「没测到」这句话没有意义。",
   "data_space": "同一控制结构下的合成因变量（真实偏相关已知）",
   "truth_source": "构造时写死的真实偏相关（0.6）"
  }
 ],
 "prediction": {
  "P1_primary": "在 n≈21 这个量级上，旅游指标的净关联**无法与零模型区分**：置换 p ≥ 0.05。我们事先就认为这是最可能的结果——不是因为旅游没有影响，而是因为 21 个观测在扣掉两个控制变量和年份之后，只有真实偏相关达到 0.6 上下才有机会被看见。",
  "P2_direction": "无论是否显著，都报 β 的符号、每翻一倍对应的百分点变化、偏相关点估计与按城市重抽的区间。若区间跨 0，明确写「方向不定」，不做方向性宣称。",
  "P3_ruler": "正对照（真实偏相关 0.6）在 3 个种子里至少 2 个被检出（p<0.05）；负对照（真实偏相关 0）3 个种子都不显著，且检出率模拟在 0.02–0.10 之间。",
  "P4_single_city": "留一城市重算后 β 的符号可能翻转——沿海 7 市里青岛的旅游体量远大于其余城市，单城市驱动是这一轮最现实的失败模式。",
  "rationale": "需求方要的是净影响方向。诚实的做法是先说清楚这个样本量能不能支撑一个方向性结论，再给方向。如果 P1 成立（测不出来），这对需求方同样有用：它说明想回答这个问题得把样本量做上去（更多城市、更长年份、或月度/点位级数据），而不是在 21 个点上反复换模型。"
 },
 "decision_rule": {
  "P1_refuted_if": "两种零模型方案（置换旅游指标、Freedman–Lane 置换残差）下置换 p 都 < 0.05，且 3 个种子一致。此时说明信号强到即使这么小的样本也看得见。",
  "P3_is_a_kill_switch": "正对照测不出（3 个种子里 <2 个 p<0.05），或负对照虚警率 > 0.10 —— 这把尺子失效，主结论一并作废，如实上报，不许换个统计量再试。",
  "count_criteria_must_report_continuous": "凡出现「3 个种子方向一致」「N 个城市同号」这类计数式说法，同一处必须并列给出：置换 p 值、偏相关点估计、按城市重抽的 95% 区间。只报计数不报连续量视为未达标。",
  "no_refitting_for_a_nicer_answer": "模型设定在跑之前写死。不许为了结论好看换控制变量、换函数形式、换年份范围、剔城市。留一城市只作为稳健性展示，不作为主结论。",
  "negative_result_is_delivered_as_is": "否定结果照样交付、照样说清楚，不包装成成功，不改判据。"
 },
 "declared_confounders": [
  "反向因果：水质好本身会吸引游客，年度数据分不开方向。",
  "年份共同冲击：2021–2023 疫情对旅游的压制与全省水污染治理的推进同时发生，年份固定效应只能吸收全省共同的那一部分。",
  "青岛体量主导：旅游与经济体量远大于其余 6 市，可能单城市驱动整个斜率（用留一城市检查）。",
  "监测口径变化：国控点位设置与评价方法在 2021–2023 之间若有调整，会以噪声或系统性偏移的形式进入 y。",
  "旅游统计口径：各市公报的「接待游客」定义不完全一致，且部分城市近年不再公布。"
 ],
 "out_of_scope": [
  "因果推断。21 个观测、没有外生冲击、没有工具变量，本轮做的是相关结构的方向性描述。",
  "政策建议（限流、收费、排污管控等）。本轮的证据强度够不上任何一条政策主张。",
  "跨省推广或全国结论。只做山东 7 个沿海市。",
  "机器学习模型、变量重要性、SHAP（那是本轮范围之外的方向）。",
  "未来情景模拟与预测（本轮范围之外的方向）。",
  "月度/点位级细粒度分析——本轮受限于公开年度数据。",
  "GPU 算力、申请制或需注册的数据库。"
 ]
}