def test_logrank_test_output_against_R_1(): df = load_g3() ix = (df['group'] == 'RIT') d1, e1 = df.loc[ix]['time'], df.loc[ix]['event'] d2, e2 = df.loc[~ix]['time'], df.loc[~ix]['event'] expected = 0.0138 result = stats.logrank_test(d1, d2, event_observed_A=e1, event_observed_B=e2) assert abs(result.p_value - expected) < 0.0001
def test_logrank_test_output_against_R_1(): df = load_g3() ix = df["group"] == "RIT" d1, e1 = df.loc[ix]["time"], df.loc[ix]["event"] d2, e2 = df.loc[~ix]["time"], df.loc[~ix]["event"] expected = 0.0138 result = stats.logrank_test(d1, d2, event_observed_A=e1, event_observed_B=e2) assert abs(result.p_value - expected) < 0.0001
def test_kmf_survival_curve_output_against_R(self): df = load_g3() ix = df['group'] == 'RIT' kmf = KaplanMeierFitter() expected = np.array([[0.909, 0.779]]).T kmf.fit(df.ix[ix]['time'], df.ix[ix]['event'], timeline=[25, 53]) npt.assert_array_almost_equal(kmf.survival_function_.values, expected, decimal=3) expected = np.array([[0.833, 0.667, 0.5, 0.333]]).T kmf.fit(df.ix[~ix]['time'], df.ix[~ix]['event'], timeline=[9, 19, 32, 34]) npt.assert_array_almost_equal(kmf.survival_function_.values, expected, decimal=3)
def test_kmf_confidence_intervals_output_against_R(self): # this uses conf.type = 'log-log' df = load_g3() ix = df['group'] != 'RIT' kmf = KaplanMeierFitter() kmf.fit(df.ix[ix]['time'], df.ix[ix]['event'], timeline=[9, 19, 32, 34]) expected_lower_bound = np.array([0.2731, 0.1946, 0.1109, 0.0461]) npt.assert_array_almost_equal(kmf.confidence_interval_['KM_estimate_lower_0.95'].values, expected_lower_bound, decimal=3) expected_upper_bound = np.array([0.975, 0.904, 0.804, 0.676]) npt.assert_array_almost_equal(kmf.confidence_interval_['KM_estimate_upper_0.95'].values, expected_upper_bound, decimal=3)