场景案例 ·

监狱矫正与累犯风险研究怎么用 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 等心理评估量表得分可以直接作为连续型预测变量纳入逻辑回归吗?

可以,连续型变量直接纳入比人为二分(如"高/低风险")保留更多信息。但需注意:

  1. 检验线性假设:使用 Box-Tidwell 检验或将连续变量按四分位分组后观察 OR 趋势,确认 log-odds 与预测变量之间呈线性关系
  2. 标准化处理:若预测变量量纲相差悬殊,可先 z-score 标准化,使 OR 可比
  3. 报告非线性效应:如怀疑存在非线性(如 PCL-R 极高分效果不同),可加入平方项或使用受限三次样条(RCS)

在 ChatSRS 中,指令中加入"请检验连续预测变量的线性假设,必要时加入样条项"即可。

Q4: 矫正研究中样本从哪里获取?如果只有档案数据怎么处理缺失值?

数据来源通常有:省级监狱管理局档案、司法行政机关矫正记录、课题合作机构数据、公安信息系统(需保密协议)。若只有部分档案且缺失率较高(> 5%),建议:

  1. 描述缺失模式:用 Little's MCAR 检验判断是否为完全随机缺失
  2. 多重插补(Multiple Imputation):如缺失非随机,用 MICE(链式方程多重插补)代替列表删除,避免估计偏差
  3. 敏感性分析:对比完整案例分析和插补后分析结果,若结论一致则稳健性良好

在 ChatSRS 中:"请做缺失值分析,若缺失超过5%请用多重插补(m=20),然后用汇集规则(Rubin规则)合并逻辑回归结果。"

Q5: 审稿人要求"控制样本选择偏差",在矫正研究中怎么处理?

监狱矫正研究的经典混杂问题是:参与矫正项目的人本来就动机更强、风险更低(自选择偏差,selection bias)。解决方法:

  1. 倾向得分匹配(PSM):基于基线协变量估计参与矫正的倾向得分,对参与组与未参与组进行 1:1 匹配,再做组间比较
  2. 工具变量(IV):若能找到影响矫正参与但不直接影响再犯的外生变量(如项目名额限制),可做 IV 估计
  3. 在 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 报告句式,在论文里替换数值即可使用。


相关阅读


本文首发于 ChatSRS 官方博客。如有问题或反馈,欢迎在 ChatSRS 站内 [用户中心 -> 帮助与反馈] 联系我们。