场景案例 ·
监狱矫正与累犯风险研究怎么用 AI 做统计分析?— 逻辑回归 + Cox 生存分析全流程
犯罪学、司法心理、社会学研究者必看:从二元逻辑回归识别累犯高危因子,到 Cox 生存分析追踪重新犯罪时间,ChatSRS 三引擎一句话跑完,直出 APA 7th 报告句式。
犯罪学、司法社会工作、法律心理学方向的研究者,最常遇到的数据分析死穴:累犯率预测要用什么模型?矫正项目有没有效、效果能撑多久?再犯时间数据有删失(censoring)要怎么处理?SPSS 跑出来的 Exp(B) 是什么意思、怎么写进论文?这篇文章把监狱矫正研究最核心的两条统计路径——**二元逻辑回归(累犯风险因子识别)**和 Cox 比例风险生存分析(重新犯罪时间追踪)——从数据结构到 APA 报告句式一次串通,每步给出可在 ChatSRS 直接粘贴的真实指令。
矫正研究数据分析为什么难
监狱和社区矫正研究有几个独特的数据挑战,让普通统计方法行不通:
- 结局是二分类:假释后 3 年内是否再犯(0/1),不是连续变量,线性回归直接失效
- 追踪时间不等长:有人刑满后第 6 个月再犯,有人随访截止时尚未再犯(删失),纳入时间维度必须用生存分析
- 预测因子维度宽:人口学(年龄、文化程度、民族)、犯罪史(首犯/惯犯、前科次数、刑期长度)、心理评估(PCL-R 反社会得分、LSI-R 风险评级)、社会资本(家庭支持、就业状态)同时纳入,需处理多重共线性
- 样本来源敏感:监狱档案数据有缺失值和录入误差,须先做数据清洗
- APA 报告规范严:犯罪学顶刊要求报告 OR(比值比)95% CI、HR(危险比)95% CI,Wald chi-square,Nagelkerke R²,以及生存曲线图
chatsrs.com 三引擎(SPSS + R + Stata)把这整套分析变成对话。下面分两条主线演示。
典型数据结构
研究设计:某省 2018—2022 年出狱人员 3 年追踪队列(N = 580),研究问题:矫正项目参与对再犯率及再犯时间的影响。
编号 矫正参与 年龄 文化程度 前科次数 PCL-R得分 家庭支持 就业状态 3年内再犯 首次再犯月数 删失
001 1(参与) 26 初中 1 8.2 高 是 0 36(随访止) 1
002 0(未参与) 34 小学 3 18.6 低 否 1 14 0
003 1(参与) 41 高中 2 12.1 中 是 0 36(随访止) 1
...
变量说明:
- 矫正参与:1 = 参与系统性矫正项目(职业培训 + 心理干预),0 = 常规管理
- 删失 = 1:随访期满时尚未再犯(右删失)
- 首次再犯月数:再犯者为实际再犯时间,删失者为随访持续时间
主线一:二元逻辑回归 — 识别累犯高危因子
第一步:描述统计与再犯率基线
打开 chatsrs.com,上传数据后输入:
"请按矫正参与(是/否)分组,输出:3年再犯率(百分比)、年龄均值SD、前科次数均值SD、PCL-R得分均值SD、家庭支持各分类频率;生成APA三线表,并做组间独立t检验或卡方检验,报告统计量和p值。"
ChatSRS 自动输出:
表 1 两组基线特征比较(M +- SD 或 n/百分比)
矫正参与组 (n = 312) 未参与组 (n = 268) 统计量
再犯率 18.3% 39.2% chi^2(1) = 32.47, p < .001
年龄(岁) 33.6 (8.4) 34.1 (9.1) t(578) = -0.62, p = .537
前科次数 1.48 (0.91) 2.14 (1.23) t(578) = -6.94, p < .001
PCL-R 得分 11.3 (6.2) 16.8 (7.4) t(578) = -9.18, p < .001
家庭支持(高/中/低) 54/32/14% 28/38/34% chi^2(2) = 41.32, p < .001
为什么先做这步:基线比较显示两组在前科次数、PCL-R 和家庭支持上已有显著差异,说明简单比较再犯率是混杂的,需要进入多元逻辑回归控制这些协变量。
第二步:共线性诊断
"对以下预测变量做多重共线性诊断:矫正参与、年龄、文化程度、前科次数、PCL-R得分、家庭支持(虚拟编码)、就业状态;报告VIF和容忍度(Tolerance),标记VIF>10的变量。"
ChatSRS 输出:
共线性诊断结果
变量 VIF 容忍度
矫正参与 1.32 0.758
年龄 1.18 0.847
文化程度 1.24 0.806
前科次数 2.01 0.498
PCL-R 得分 2.18 0.459
家庭支持_高 1.67 0.599
家庭支持_中 1.54 0.649
就业状态 1.41 0.709
结论:所有VIF < 3,无多重共线性问题,可继续分析。
第三步:二元逻辑回归主模型
"以3年内再犯(0/1)为因变量,纳入矫正参与(虚拟变量,未参与=0)、年龄、文化程度(有序编码:小学=1/初中=2/高中=3/大专及以上=4)、前科次数、PCL-R得分、家庭支持(高=参照,中/低虚拟)、就业状态做二元逻辑回归(Enter法)。报告:每个变量的B系数、SE、Wald chi^2、p值、OR(Exp(B))和95%CI;模型整体拟合Hosmer-Lemeshow检验、Nagelkerke R^2、-2LL;生成APA三线表。"
ChatSRS 输出(示例):
表 2 累犯风险二元逻辑回归结果(N = 580)
预测变量 B SE Wald p OR 95% CI
矫正参与(是) -0.94 0.21 20.12 < .001 0.39 [0.26, 0.59]
年龄 -0.02 0.01 3.41 .065 0.98 [0.96, 1.00]
文化程度 -0.28 0.12 5.44 .020 0.76 [0.60, 0.96]
前科次数 0.61 0.11 30.87 < .001 1.84 [1.48, 2.29]
PCL-R 得分 0.08 0.02 18.34 < .001 1.08 [1.04, 1.12]
家庭支持_中 0.47 0.26 3.27 .070 1.60 [0.96, 2.66]
家庭支持_低 1.12 0.29 14.89 < .001 3.06 [1.73, 5.41]
就业状态(有) -0.71 0.22 10.45 .001 0.49 [0.32, 0.76]
常数 -2.18 0.54 16.28 < .001
模型拟合:-2LL = 418.32,chi^2(8) = 124.67, p < .001
Nagelkerke R^2 = .284
Hosmer-Lemeshow:chi^2(8) = 9.12, p = .333(模型拟合良好)
整体分类正确率:79.1%
关键结果解读:
- 矫正参与 OR = 0.39:参与矫正项目者再犯优势比为未参与者的 0.39 倍,即参与矫正可使再犯优势(odds)降低约 61%
- 前科次数 OR = 1.84:每增加 1 次前科,再犯优势增加 84%,是最强的正向风险因子
- PCL-R 得分 OR = 1.08:PCL-R 每增加 1 分,再犯几率增加 8%
- 家庭支持低 OR = 3.06:与高家庭支持相比,低家庭支持者再犯几率为前者的 3.06 倍
第四步:模型诊断与稳健性
"对上述逻辑回归模型做:(1) 影响点诊断(Cook's距离、杠杆值);(2) 标准化残差图;(3) ROC曲线及AUC;(4) 将样本按7:3分为训练集/验证集重跑模型,报告验证集AUC。"
ChatSRS 输出 ROC 曲线及 AUC:
训练集 AUC = 0.847(95% CI [0.812, 0.882]),优秀分类性能
验证集 AUC = 0.821(95% CI [0.771, 0.871]),模型具有良好泛化能力
最优截断点(Youden指数最大化):0.318
灵敏度 = 78.4%,特异度 = 81.2%
ROC 曲线分析的完整说明参见:ROC 曲线分析完整教程
主线二:Cox 比例风险生存分析 — 追踪再犯时间
逻辑回归只能回答"谁更容易再犯",无法回答"何时再犯、矫正效果能持续多久"。Cox 生存分析同时建模事件发生概率和时间。
第一步:Kaplan-Meier 生存曲线
"以首次再犯月数为生存时间,再犯(1=事件,0=删失)为结局,按矫正参与(是/否)分组绘制Kaplan-Meier生存曲线;报告各组中位生存时间(含95%CI);做Log-rank检验(Mantel-Cox),报告chi^2和p值。"
ChatSRS 输出:
Kaplan-Meier 生存分析结果
矫正参与组 未参与组
中位无再犯时间 未达到(>36月) 22.4月(95% CI [18.6, 26.2])
Log-rank 检验:chi^2(1) = 38.24, p < .001
矫正参与组生存函数在整个随访期内显著优于未参与组。
36月累积再犯率:
矫正参与组:18.3%(95% CI [14.2, 22.8])
未参与组: 39.2%(95% CI [33.4, 44.9])
Kaplan-Meier 曲线和 Log-rank 检验的完整逻辑参见:生存分析完整教程
第二步:比例风险假设检验(Cox 前提)
"在做Cox回归之前,检验各协变量是否满足比例风险假设(PH假设):用Schoenfeld残差法对每个变量做PH检验,报告rho相关系数和p值;并生成log(-log(S(t))) vs log(t)图辅助判断。"
ChatSRS 输出:
比例风险假设检验(Schoenfeld残差)
变量 rho chi^2 p
矫正参与 -0.048 0.84 .361
年龄 -0.031 0.35 .556
前科次数 0.062 1.42 .233
PCL-R 得分 0.054 1.11 .292
家庭支持_低 0.081 2.48 .115
就业状态 -0.037 0.52 .472
全局检验 7.94 .243
结论:所有变量p > .05,全局检验p = .243,满足PH假设,可继续做Cox回归。
第三步:Cox 比例风险回归主模型
"以首次再犯月数为生存时间,再犯为事件,纳入矫正参与、年龄、文化程度、前科次数、PCL-R得分、家庭支持(高=参照)、就业状态做Cox比例风险回归。报告:每个变量的HR(exp(coef))、95%CI、z值、p值;模型整体Likelihood ratio test、Wald test、Score test;生成APA三线表。"
ChatSRS 输出(示例):
表 3 累犯时间 Cox 比例风险回归结果(N = 580,事件 = 169)
预测变量 HR 95% CI z p
矫正参与(是) 0.44 [0.31, 0.63] -4.87 < .001
年龄 0.98 [0.96, 1.00] -1.82 .069
文化程度 0.80 [0.66, 0.97] -2.24 .025
前科次数 1.72 [1.44, 2.05] 6.12 < .001
PCL-R 得分 1.07 [1.04, 1.10] 5.08 < .001
家庭支持_中 1.44 [0.92, 2.25] 1.67 .095
家庭支持_低 2.81 [1.74, 4.54] 4.34 < .001
就业状态(有) 0.55 [0.38, 0.80] -3.04 .002
模型整体检验
Likelihood ratio test:chi^2(8) = 132.4, p < .001
Wald test: chi^2(8) = 121.8, p < .001
Score (logrank) test:chi^2(8) = 128.6, p < .001
Concordance(C-index)= 0.821(95% CI [0.789, 0.853])
关键结果解读:
- 矫正参与 HR = 0.44:参与矫正项目者在任意时间点再犯的瞬时风险为未参与者的 44%,即矫正参与使再犯风险降低约 56%
- 前科次数 HR = 1.72:每增加 1 次前科,再犯瞬时风险增加 72%
- 家庭支持低 HR = 2.81:低家庭支持者再犯风险为高家庭支持者的 2.81 倍
- C-index = 0.821:模型区分再犯者与非再犯者的能力处于良好水平(> 0.8)
危险比(HR)的完整解读方法参见:危险比 Hazard Ratio 解读指南
第四步:矫正效果的交互项分析(异质性检验)
"在Cox模型中加入矫正参与 × PCL-R得分的交互项,检验矫正效果是否随反社会人格程度不同而变化(Interaction HR及95%CI、p值);并按PCL-R得分三分位数分组,绘制三条分层Kaplan-Meier生存曲线,分别显示矫正组与未矫正组在低/中/高PCL-R三个亚组中的生存差异。"
ChatSRS 输出交互项检验结果和分层生存曲线,帮助研究者识别"矫正项目对哪类罪犯更有效"。
论文方法 / 结果写法(APA 7th,可抄进论文的句式)
这是最直接帮到你的部分——把上面每步分析的结果翻译成论文 Results 章节可用的 APA 格式句子。
方法章节:数据分析策略描述
本研究采用二元逻辑回归(binary logistic regression)识别 3 年内累犯的独立风险因子,以矫正参与为核心自变量,同时控制年龄、文化程度、前科次数、PCL-R 反社会人格评分、家庭支持和就业状态。模型拟合优度以 Hosmer-Lemeshow 检验和 Nagelkerke R² 评估;分类性能以受试者工作特征曲线(ROC)及曲线下面积(AUC)报告。针对追踪失访(删失)数据,采用 Cox 比例风险回归(Cox proportional hazards regression)建立再犯时间模型;在正式建模前,使用 Schoenfeld 残差法检验比例风险假设。所有分析均经 ChatSRS 完成,显著性水平设为双侧 α = .05,OR 与 HR 均附 95% 置信区间。
结果章节:基线差异
卡方检验显示,矫正参与组(n = 312)3 年内再犯率(18.3%)显著低于未参与组(n = 268,39.2%),χ²(1) = 32.47,p < .001。两组在年龄上无显著差异(p = .537),但在前科次数、PCL-R 得分及家庭支持分布上存在显著差异(均 p < .001),提示需在多元模型中控制上述混杂因素。
结果章节:逻辑回归主要结果
二元逻辑回归结果显示(见表 2),控制人口学与风险因子后,矫正参与对 3 年内累犯具有显著负向效应,B = -0.94,Wald χ²(1) = 20.12,p < .001,OR = 0.39,95% CI [0.26, 0.59],即参与矫正者再犯优势(odds)约为未参与者的 39%。前科次数(OR = 1.84,95% CI [1.48, 2.29],p < .001)和 PCL-R 得分(OR = 1.08,95% CI [1.04, 1.12],p < .001)是最强正向风险因子;低家庭支持(OR = 3.06,95% CI [1.73, 5.41],p < .001)和无就业(OR = 0.49 vs. 就业,p = .001)亦显著影响再犯风险。模型整体显著,χ²(8) = 124.67,p < .001,Nagelkerke R² = .284;Hosmer-Lemeshow 检验无显著偏差,χ²(8) = 9.12,p = .333;验证集 AUC = 0.821(95% CI [0.771, 0.871]),表明模型具有良好泛化性能。
结果章节:Cox 生存分析主要结果
Kaplan-Meier 分析显示,矫正参与组 36 月累积再犯率(18.3%)显著低于未参与组(39.2%),Log-rank χ²(1) = 38.24,p < .001;未参与组中位无再犯时间为 22.4 月(95% CI [18.6, 26.2]),矫正参与组在 36 月随访期内中位时间未达到。比例风险假设经 Schoenfeld 残差法检验,全局检验 χ²(8) = 7.94,p = .243,各变量均满足 PH 假设。Cox 回归结果(见表 3)显示,矫正参与者在任意时间点再犯的瞬时风险显著低于未参与者,HR = 0.44,95% CI [0.31, 0.63],p < .001,即矫正参与使再犯瞬时风险降低约 56%。前科次数(HR = 1.72,p < .001)和低家庭支持(HR = 2.81,p < .001)为最强正向风险因子;模型 C-index = 0.821(95% CI [0.789, 0.853]),区分度良好。
上面三段可直接进论文 Methods 和 Results 章节,替换你自己的数值即可。ChatSRS 的"APA 报告"功能可自动生成对应段落,无需手动转写。
常见 FAQ
Q1: 累犯研究应该用逻辑回归还是 Cox 生存分析,有什么区别?
两种方法回答不同的研究问题,通常配合使用:
- 逻辑回归:回答"谁更可能再犯"——以二分类结局(是/否再犯)为因变量,识别高危因子,输出 OR(比值比),不考虑时间维度
- Cox 生存分析:回答"何时再犯、矫正效果能持续多久"——同时建模事件发生概率和时间,处理删失数据,输出 HR(危险比)
- 选择原则:如果你有精确的随访时间数据且存在删失,优先选 Cox;如果只知道随访截止时的再犯状态,用逻辑回归;二者都有随访数据时,强烈建议两种模型都做,互相印证
在 ChatSRS 里,同一个数据集上传一次、分别描述两个分析需求即可——不需要换工具。
Q2: Cox 回归中的"删失"是什么意思,数据怎么编码?
**删失(censoring)**指研究者在随访结束时仍未观察到事件发生的个体。在累犯研究中:
- 再犯者:生存时间 = 出狱到首次再犯的实际月数;事件变量编码 = 1
- 删失者(随访截止仍未再犯):生存时间 = 出狱到随访截止的月数;事件变量编码 = 0
数据集中通常需要两列:time(月数)和 event(0/1)。在 ChatSRS 中,告知哪列是时间、哪列是事件、哪个值代表"发生"即可,AI 自动识别删失结构。
Q3: PCL-R 等心理评估量表得分可以直接作为连续型预测变量纳入逻辑回归吗?
可以,连续型变量直接纳入比人为二分(如"高/低风险")保留更多信息。但需注意:
- 检验线性假设:使用 Box-Tidwell 检验或将连续变量按四分位分组后观察 OR 趋势,确认 log-odds 与预测变量之间呈线性关系
- 标准化处理:若预测变量量纲相差悬殊,可先 z-score 标准化,使 OR 可比
- 报告非线性效应:如怀疑存在非线性(如 PCL-R 极高分效果不同),可加入平方项或使用受限三次样条(RCS)
在 ChatSRS 中,指令中加入"请检验连续预测变量的线性假设,必要时加入样条项"即可。
Q4: 矫正研究中样本从哪里获取?如果只有档案数据怎么处理缺失值?
数据来源通常有:省级监狱管理局档案、司法行政机关矫正记录、课题合作机构数据、公安信息系统(需保密协议)。若只有部分档案且缺失率较高(> 5%),建议:
- 描述缺失模式:用 Little's MCAR 检验判断是否为完全随机缺失
- 多重插补(Multiple Imputation):如缺失非随机,用 MICE(链式方程多重插补)代替列表删除,避免估计偏差
- 敏感性分析:对比完整案例分析和插补后分析结果,若结论一致则稳健性良好
在 ChatSRS 中:"请做缺失值分析,若缺失超过5%请用多重插补(m=20),然后用汇集规则(Rubin规则)合并逻辑回归结果。"
Q5: 审稿人要求"控制样本选择偏差",在矫正研究中怎么处理?
监狱矫正研究的经典混杂问题是:参与矫正项目的人本来就动机更强、风险更低(自选择偏差,selection bias)。解决方法:
- 倾向得分匹配(PSM):基于基线协变量估计参与矫正的倾向得分,对参与组与未参与组进行 1:1 匹配,再做组间比较
- 工具变量(IV):若能找到影响矫正参与但不直接影响再犯的外生变量(如项目名额限制),可做 IV 估计
- 在 ChatSRS 中:"请对矫正参与做倾向得分匹配(Logit模型估计PS,1:1最近邻匹配,卡钳值0.02),报告匹配前后协变量均衡性(SMD<0.1),再在匹配样本上重跑逻辑回归。"
倾向得分匹配的完整流程参见:PSM 倾向得分匹配分析
矫正研究分析路径小结
| 研究问题 | 推荐方法 | ChatSRS 关键指令关键词 |
|---|---|---|
| 哪些因素预测再犯(是/否) | 二元逻辑回归 | "以再犯0/1为因变量,Enter法逻辑回归,OR和95%CI" |
| 多分类再犯程度(初犯/再犯/惯犯) | 多项式逻辑回归 | "多项式逻辑回归,以初犯为参照" |
| 何时再犯、删失数据处理 | Cox 比例风险回归 | "Cox回归,time和event列,HR和95%CI,PH假设检验" |
| 矫正效果随时间的可视化 | Kaplan-Meier + Log-rank | "KM生存曲线,分组,Log-rank检验" |
| 消除自选择偏差 | 倾向得分匹配 | "PSM 1:1匹配,SMD均衡性,再做逻辑回归" |
| 矫正效果异质性 | Cox + 交互项 | "矫正参与×PCL-R交互项,分层KM曲线" |
| 模型区分度 | ROC/C-index | "ROC曲线AUC,C-index,最优截断点" |
每一步的输出 ChatSRS 都能直接生成 APA 7th 报告句式,在论文里替换数值即可使用。
相关阅读
- 逻辑回归完整教程 — OR 与 95% CI 用 AI 一句话完成
- 生存分析完整教程 — Kaplan-Meier 与 Cox 回归 AI 全流程
- 危险比 Hazard Ratio 完整解读指南
- PSM 倾向得分匹配分析 — 消除选择偏差的 AI 方案
- ROC 曲线分析完整教程 — AUC 与最优截断点
本文首发于 ChatSRS 官方博客。如有问题或反馈,欢迎在 ChatSRS 站内 [用户中心 -> 帮助与反馈] 联系我们。