基于 Bhattacherjee《社会科学研究方法》单元 13-15 设计
课程信息
| 项目 | 内容 |
|---|---|
| 课程名称 | 农村金融业务及监管 |
| 学期 | 2026 年秋季学期 |
| 学生姓名 | ______________ |
| 学号 | ______________ |
| 项目编号 | ______________ |
| 数据集版本 | ______________ |
| 更新日期 | ______________ |
1 变量清单
💡 提示:变量清单是代码本的核心。每个变量都要有清晰的定义,确保其他研究者能理解你的数据。
1.1 变量定义表
| 序号 | 变量名 | 变量标签 | 类型 | 测量层级 | 操作定义 | 数据源 | 单位 | 取值范围 | 备注 |
|---|---|---|---|---|---|---|---|---|---|
| 1 | id | 受访者编号 | 字符串 | 标识 | 唯一标识符 | 自编 | — | INT-001~ | |
| 2 | gender | 性别 | 数值 | 名义 | 受访者生理性别 | 问卷 | — | 1=男,2=女 | |
| 3 | age | 年龄 | 数值 | 比率 | 受访者周岁年龄 | 问卷 | 岁 | 18-80 | |
| 4 | edu | 教育程度 | 数值 | 顺序 | 最高学历 | 问卷 | — | 1=小学及以下,2=初中,3=高中/中专,4=大专,5=本科及以上 | |
| 5 | income | 家庭年收入 | 数值 | 比率 | 家庭全年总收入 | 问卷 | 万元 | 0-100 | 取区间中值 |
| 6 | loan_exp | 贷款经历 | 数值 | 名义 | 过去12个月是否有贷款 | 问卷 | — | 0=否,1=是 | |
| 7 | fin_lit | 金融素养得分 | 数值 | 间隔 | Lusardi 三题正确数 | 问卷 | 分 | 0-3 | |
| 8 | fin_excl | 金融排斥感 | 数值 | 间隔 | Kempson 量表总分 | 问卷 | 分 | 6-30 | 6题×5点 |
| 9 | satisfaction | 贷款满意度 | 数值 | 间隔 | 自编4题量表总分 | 问卷 | 分 | 4-20 | |
| 10 | npl_rate | 不良贷款率 | 数值 | 比率 | 不良贷款/贷款余额 | 银行报表 | % | 0-100 | 机构层面 |
💡 提示:测量层级分为四类——名义(Nominal)、顺序(Ordinal)、间隔(Interval)、比率(Ratio)。测量层级决定了你可以使用哪些统计方法。
1.2 编码规则
| 编码类型 | 规则说明 | 示例 |
|---|---|---|
| 名义变量 | 使用连续整数,从 1 开始 | 1=男,2=女 |
| 顺序变量 | 按逻辑顺序编码 | 1=小学 → 5=本科及以上 |
| 量表变量 | 保持原始 Likert 编码 | 1=非常不同意 → 5=非常同意 |
| 缺失值 | 统一使用特定数值标记 | -999 或 .(Stata 默认) |
| 反向题 | 在数据清洗时统一反向计分 | 5→1, 4→2, 3→3, 2→4, 1→5 |
1.3 变量命名规范
- 使用英文小写字母和下划线(如
loan_amount) - 长度不超过 32 个字符(Stata 变量名限制)
- 避免使用 Stata 保留字(如
if、in、by) - 同一构念的变量使用共同前缀(如
risk_01、risk_02、risk_03)
2 描述统计计划
💡 提示:描述统计是数据分析的第一步,帮助你了解数据的基本特征,为后续推断统计做准备。
2.1 基本描述统计
| 变量类型 | 统计量 | 呈现方式 |
|---|---|---|
| 连续变量 | 均值、中位数、标准差、最小值、最大值、偏度、峰度 | 表格 |
| 分类变量 | 频次、百分比、累积百分比 | 表格 + 条形图 |
| 顺序变量 | 中位数、四分位数、频次分布 | 表格 |
2.2 分布检验
| 检验项目 | 方法 | 判断标准 |
|---|---|---|
| 正态性 | Shapiro-Wilk 检验、K-S 检验、Q-Q 图 | p > 0.05 为正态 |
| 偏度 | 偏度系数 | 绝对值 < 1 为可接受 |
| 峰度 | 峰度系数 | 绝对值 < 3 为可接受 |
| 异方差 | Breusch-Pagan 检验 | p > 0.05 为同方差 |
| 多重共线性 | VIF(方差膨胀因子) | VIF < 10 为可接受 |
2.3 缺失值分析
| 检查项目 | 方法 | 处理策略 |
|---|---|---|
| 缺失模式 | Little's MCAR 检验 | 判断缺失是否完全随机 |
| 缺失比例 | 每个变量的缺失率 | < 5% 可忽略;5-15% 需插补;> 15% 考虑删除变量 |
| 插补方法 | 多重插补(MI)或均值填补 | 优先使用多重插补 |
2.4 描述统计输出模板
| 变量 | N | 均值 | 标准差 | 最小值 | 中位数 | 最大值 | 偏度 | 峰度 |
|---|---|---|---|---|---|---|---|---|
3 推断统计计划
💡 提示:推断统计用于检验你的研究假设。在开始分析之前,明确每个假设对应的统计方法。
3.1 假设-方法对照表
| 假设编号 | 假设内容 | 自变量 | 因变量 | 控制变量 | 统计方法 | 选择理由 |
|---|---|---|---|---|---|---|
| H1 | 金融素养正向影响贷款参与度 | fin_lit | loan_exp | age, edu, income | Logistic 回归 | 因变量为二分类 |
| H2 | 金融排斥感负向影响贷款满意度 | fin_excl | satisfaction | gender, age | OLS 回归 | 因变量为连续变量 |
| H3 | 教育程度调节金融素养与贷款参与的关系 | fin_lit × edu | loan_exp | — | 交互项回归 | 检验调节效应 |
3.2 统计方法选择指南
| 研究场景 | 因变量类型 | 推荐方法 | 前提条件 |
|---|---|---|---|
| 两组均值比较 | 连续 | 独立样本 t 检验 | 正态性、方差齐性 |
| 多组均值比较 | 连续 | 单因素方差分析(ANOVA) | 正态性、方差齐性 |
| 相关关系 | 连续×连续 | Pearson 相关 / Spearman 相关 | 正态/非正态 |
| 预测连续因变量 | 连续 | OLS 多元回归 | 线性、独立、正态、同方差 |
| 预测二分类因变量 | 二分类 | Logistic 回归 | 无多重共线性 |
| 预测有序因变量 | 有序 | 有序 Logistic 回归 | 平行线假设 |
| 面板数据 | 连续 | 固定效应/随机效应模型 | Hausman 检验 |
| 政策效果评估 | 连续 | 双重差分法(DID) | 平行趋势假设 |
| 内生性问题 | 连续 | 工具变量法(IV/2SLS) | 工具变量外生性 |
| 中介效应 | 连续 | Baron-Kenny 法 / Bootstrap | 样本量充足 |
3.3 稳健性检验计划
| 检验方法 | 目的 | 适用场景 |
|---|---|---|
| 替换因变量测量 | 检验结论对测量方式的敏感性 | 有多个可用指标时 |
| 替换估计方法 | 检验结论对模型的敏感性 | 如 OLS → Tobit |
| 子样本分析 | 检验结论在不同群体中的一致性 | 按地区/性别/规模分组 |
| 剔除极端值 | 检验结论是否受异常值驱动 | 缩尾处理(1%/99%) |
| 增加控制变量 | 检验遗漏变量偏误 | 逐步加入新变量 |
4 定性编码方案
💡 提示:定性编码是将访谈文本等非结构化数据转化为可分析范畴的过程。
4.1 一级编码(开放编码)
逐行阅读文本,为有意义的片段分配初始代码:
| 文本片段 | 初始代码 | 编码类型 |
|---|---|---|
| "我们不看重抵押物,更看重这个人在这边的口碑" | 软信息替代 | in vivo |
| "村里推荐来的人,我们一般都比较放心" | 社区推荐机制 | 研究者编码 |
| "利率太高了,我们这种小本生意根本承受不起" | 利率敏感 | in vivo |
4.2 二级编码(主轴编码)
将开放编码归类为更高层次的范畴:
| 范畴名称 | 包含的初始代码 | 范畴定义 | 范畴关系 |
|---|---|---|---|
| 社区嵌入风控 | 软信息替代、社区推荐、口碑评估 | 利用社区社会网络进行风险评估 | 条件→策略 |
| 融资约束感知 | 利率敏感、额度不足、期限不匹配 | 农户对金融服务的不满和限制 | 现象→结果 |
4.3 三级编码(选择编码)
提炼核心范畴,构建理论框架:
| 核心范畴 | 子范畴 | 关系类型 | 理论故事线 |
|---|---|---|---|
4.4 编码员一致性
- 编码人数:至少 2 名独立编码员
- 一致性指标:Cohen's Kappa(κ)≥ 0.7 为可接受
- 不一致处理:讨论协商,必要时引入第三名编码员裁决
- 编码迭代:每轮编码后召开校准会议,统一编码标准
💡 提示:Kappa 计算公式:κ = (P₀ - Pₑ) / (1 - Pₑ),其中 P₀ 为观察一致性,Pₑ 为期望一致性。
5 stata-mcp 命令清单
💡 提示:以下命令可通过课程配置的 stata-mcp 工具直接调用。分为描述统计、回归分析和结果输出三类。
5.1 描述统计命令
stata
* 基本描述统计
summarize fin_lit fin_excl satisfaction loan_amount
* 分类变量频次表
tabulate gender
tabulate edu
* 分组描述统计
tabstat fin_lit, statistics(mean sd min max n) by(gender)
* 相关矩阵
pwcorr fin_lit fin_excl satisfaction, star(0.05) sig
* 正态性检验
sktest fin_lit
swilk fin_excl
* 多重共线性检查
reg satisfaction fin_lit fin_excl age edu income
vif5.2 回归分析命令
stata
* OLS 回归
reg satisfaction fin_excl fin_lit age edu income
* Logistic 回归(二分类因变量)
logistic loan_exp fin_lit age edu income, or
* 有序 Logistic 回归
ologit satisfaction_level fin_excl fin_lit age edu
* 交互项(调节效应)
gen fin_lit_edu = fin_lit * edu
reg loan_amount fin_lit edu fin_lit_edu age income
* 面板数据:固定效应模型
xtset panel_id time_id
xtreg npl_rate digitalization size leverage, fe
* 面板数据:Hausman 检验
xtreg y x1 x2, fe
est store fe
xtreg y x1 x2, re
est store re
hausman fe re
* 双重差分(DID)
gen treat_post = treat * post
reg outcome treat post treat_post age edu income
* 工具变量回归(2SLS)
ivregress 2sls loan_amount (fin_lit = fin_edu_policy) age income
* 中介效应(Bootstrap)
bootstrap r(ind_eff) r(dir_eff), reps(1000): sgmediation satisfaction, mv(fin_excl) iv(fin_lit)5.3 结果输出命令
stata
* 回归结果输出为表格
esttab model1 model2 model3 using results.rtf, ///
star(* 0.1 ** 0.05 *** 0.01) ///
se r2 N replace
* 系数可视化
coefplot, vertical yline(0) ///
xtitle("变量") ytitle("系数") ///
title("回归系数及95%置信区间")
* 描述统计表输出
estpost summarize fin_lit fin_excl satisfaction
esttab using desc_stats.rtf, ///
cells("count mean sd min max") replace
* 相关矩阵输出
estpost correlate fin_lit fin_excl satisfaction age edu income, matrix
esttab using corr_matrix.rtf, ///
unstack compress nokey replace
* 边际效应图(Logistic 回归后)
margins, at(fin_lit=(0 1 2 3))
marginsplot, title("金融素养对贷款参与概率的边际效应")
* 预测概率图
margins, dydx(*) atmeans
marginsplot5.4 数据管理常用命令
stata
* 数据导入
import excel "data.xlsx", sheet("Sheet1") firstrow
* 变量标签
label variable fin_lit "金融素养得分(0-3分)"
label variable gender "性别"
label define gender_lb 1 "男" 2 "女"
label values gender gender_lb
* 生成新变量
gen ln_income = ln(income)
gen age_sq = age^2
egen fin_lit_mean = mean(fin_lit), by(region)
* 缺失值处理
misstable summarize
mi set wide
mi register imputed fin_excl
mi impute chained (regress) fin_excl = age edu income, add(5)
* 数据合并
merge 1:1 id using "bank_data.dta"附录:分析检查清单
在提交数据分析结果前,逐项确认:
- [ ] 变量清单完整,每个变量都有定义
- [ ] 描述统计已覆盖所有核心变量
- [ ] 缺失值已检查并处理
- [ ] 分布检验已完成(正态性、异方差、多重共线性)
- [ ] 每个假设都有对应的统计方法
- [ ] 稳健性检验至少做了 2 种
- [ ] 定性编码有至少 2 名编码员
- [ ] Kappa 系数已计算且 ≥ 0.7
- [ ] 所有输出表格已保存为 RTF/LaTeX 格式
- [ ] 代码和日志已归档备份
附件:AI 工具使用声明
| AI 工具名称 | 版本/平台 | 使用环节 | 使用方式 | 是否人工验证 |
|---|---|---|---|---|
| (例)Stata MCP | stata-mcp | 回归分析 | 通过 MCP 调用 Stata 执行回归 | 是,核对输出 |
学生签名:______________ 日期:______________