逾期率_CI下限和逾期率_CI上限是逾期率的置信区间我这里用的是95% Wilson 置信区间。简单理解逾期率当前样本里实际观察到的逾期比例逾期率_CI下限考虑样本量波动后逾期率可能的偏低估计逾期率_CI上限考虑样本量波动后逾期率可能的偏高估计比如近三天窗口样本量逾期率CI下限CI上限近三天11448.2%39.3%57.3%意思是当前看到逾期率是48.2%但因为只有 114 单存在样本波动所以真实风险水平大致可能落在39.3% 到 57.3%之间。它不是历史最低/最高也不是每天的最小/最大值。这个字段主要用来避免过拟合样本量越小CI 区间越宽结论越不稳。如果两个客群逾期率差很多但 CI 大量重叠要谨慎。如果某客群的CI下限都明显高于整体逾期率说明高风险更可信。如果某客群的CI上限都低于整体逾期率说明低风险更可信。n 样本量x 逾期数p x / n 观察到的逾期率z 1.96 # 95%置信区间center (p z² / (2n)) / (1 z² / n)margin z * sqrt((p * (1 - p) z² / (4n)) / n) / (1 z² / n)CI下限 center - marginCI上限 center margin样本量 n 114逾期数 x 55逾期率 p 55 / 114 48.2%逾期率_CI下限 ≈ 39.3%逾期率_CI上限 ≈ 57.3%importmathdefwilson_ci(overdue_cnt,total_cnt,z1.96):ntotal_cnt xoverdue_cntifn0:returnNone,Nonepx/n center(pz**2/(2*n))/(1z**2/n)margin(z*math.sqrt((p*(1-p)z**2/(4*n))/n)/(1z**2/n))lowermax(0,center-margin)uppermin(1,centermargin)returnlower,upper lower,upperwilson_ci(55,114)print(lower,upper)print(f{lower:.1%},f{upper:.1%})