RiskRatio.fromPrevalence constructor
RiskRatio.fromPrevalence()
Standard computation according to: https://sphweb.bumc.bu.edu/otlt/mph-modules/bs/bs704_confidence_intervals/bs704_confidence_intervals8.html
Implementation
factory RiskRatio.fromPrevalence(
int improvedTotalCount,
int improvedWithOutcome,
int originalTotalCount,
int originalWithOutcome) {
final n1 = improvedTotalCount;
final x1 = improvedWithOutcome;
final n2 = originalTotalCount;
final x2 = originalWithOutcome;
assert(n1 > 0);
assert(x1 <= n1);
assert(x1 > 0);
assert(n2 > 0);
assert(x2 <= n2);
assert(x2 > 0);
final p1 = x1 / n1;
final p2 = x2 / n2;
final rr = p1 / p2;
/// 95% confidence z-score
const z = 1.96;
final c1 = ((n1 - x1) / x1) / n1;
final c2 = ((n2 - x2) / x2) / n2;
final c = z * sqrt(c1 + c2);
final ln = log(rr);
final lowerLn = ln - c;
final upperLn = ln + c;
final lower = exp(lowerLn);
final upper = exp(upperLn);
return RiskRatio(rr, lower, upper);
}