survival 1.1.23__cp314-cp314-manylinux_2_39_aarch64.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.

Potentially problematic release.


This version of survival might be problematic. Click here for more details.

survival/__init__.pyi ADDED
@@ -0,0 +1,963 @@
1
+ from typing import Any
2
+
3
+ class AaregOptions:
4
+ def __init__(
5
+ self,
6
+ formula: str,
7
+ data: list[list[float]],
8
+ variable_names: list[str],
9
+ weights: list[float] | None = None,
10
+ subset: list[int] | None = None,
11
+ na_action: str | None = None,
12
+ qrtol: float = 1e-8,
13
+ nmin: int | None = None,
14
+ dfbeta: bool = False,
15
+ taper: float = 0.0,
16
+ test: list[str] = ...,
17
+ cluster: list[int] | None = None,
18
+ model: bool = False,
19
+ x: bool = False,
20
+ y: bool = False,
21
+ ) -> None: ...
22
+
23
+ class PSpline:
24
+ coefficients: list[float] | None
25
+ fitted: bool
26
+ def __init__(
27
+ self,
28
+ x: list[float],
29
+ df: int,
30
+ theta: float,
31
+ eps: float,
32
+ method: str,
33
+ boundary_knots: tuple[float, float],
34
+ intercept: bool,
35
+ penalty: bool,
36
+ ) -> None: ...
37
+ def fit(self) -> list[float]: ...
38
+ def predict(self, new_x: list[float]) -> list[float]: ...
39
+ @property
40
+ def df(self) -> int: ...
41
+ @property
42
+ def eps(self) -> float: ...
43
+
44
+ class CoxCountOutput:
45
+ pass
46
+
47
+ class LinkFunctionParams:
48
+ def __init__(self, edge: float) -> None: ...
49
+ def blogit(self, input: float) -> float: ...
50
+ def bprobit(self, input: float) -> float: ...
51
+ def bcloglog(self, input: float) -> float: ...
52
+ def blog(self, input: float) -> float: ...
53
+
54
+ class Subject:
55
+ id: int
56
+ covariates: list[float]
57
+ is_case: bool
58
+ is_subcohort: bool
59
+ stratum: int
60
+ def __init__(
61
+ self,
62
+ id: int,
63
+ covariates: list[float],
64
+ is_case: bool,
65
+ is_subcohort: bool,
66
+ stratum: int,
67
+ ) -> None: ...
68
+
69
+ class CoxPHModel:
70
+ baseline_hazard: list[float]
71
+ risk_scores: list[float]
72
+ event_times: list[float]
73
+ censoring: list[int]
74
+ def __init__(self) -> None: ...
75
+ @staticmethod
76
+ def new_with_data(
77
+ covariates: list[list[float]],
78
+ event_times: list[float],
79
+ censoring: list[int],
80
+ ) -> "CoxPHModel": ...
81
+ def fit(self, n_iters: int = 20) -> None: ...
82
+ def predict(self, covariates: list[list[float]]) -> list[float]: ...
83
+ def get_coefficients(self) -> list[list[float]]: ...
84
+ def brier_score(self) -> float: ...
85
+ def survival_curve(
86
+ self,
87
+ covariates: list[list[float]],
88
+ time_points: list[float] | None = None,
89
+ ) -> tuple[list[float], list[list[float]]]: ...
90
+ def add_subject(self, subject: Subject) -> None: ...
91
+ def hazard_ratios(self) -> list[float]: ...
92
+ def hazard_ratios_with_ci(
93
+ self, confidence_level: float = 0.95
94
+ ) -> tuple[list[float], list[float], list[float]]: ...
95
+ def log_likelihood(self) -> float: ...
96
+ def aic(self) -> float: ...
97
+ def bic(self) -> float: ...
98
+ def cumulative_hazard(
99
+ self, covariates: list[list[float]]
100
+ ) -> tuple[list[float], list[list[float]]]: ...
101
+ def predicted_survival_time(
102
+ self, covariates: list[list[float]], percentile: float = 0.5
103
+ ) -> list[float | None]: ...
104
+ def restricted_mean_survival_time(
105
+ self, covariates: list[list[float]], tau: float
106
+ ) -> list[float]: ...
107
+ def martingale_residuals(self) -> list[float]: ...
108
+ def deviance_residuals(self) -> list[float]: ...
109
+ def dfbeta(self) -> list[list[float]]: ...
110
+ def n_events(self) -> int: ...
111
+ def n_observations(self) -> int: ...
112
+ def summary(self) -> str: ...
113
+
114
+ class SurvFitKMOutput:
115
+ time: list[float]
116
+ n_risk: list[float]
117
+ n_event: list[float]
118
+ n_censor: list[float]
119
+ estimate: list[float]
120
+ std_err: list[float]
121
+ conf_lower: list[float]
122
+ conf_upper: list[float]
123
+
124
+ class FineGrayOutput:
125
+ row: list[int]
126
+ start: list[float]
127
+ end: list[float]
128
+ wt: list[float]
129
+ add: list[int]
130
+
131
+ class SurvivalFit:
132
+ coefficients: list[float]
133
+ iterations: int
134
+ variance_matrix: list[list[float]]
135
+ log_likelihood: float
136
+ convergence_flag: int
137
+ score_vector: list[float]
138
+
139
+ class DistributionType:
140
+ pass
141
+
142
+ class SurvDiffResult:
143
+ observed: list[float]
144
+ expected: list[float]
145
+ variance: list[list[float]]
146
+ chi_squared: float
147
+ degrees_of_freedom: int
148
+
149
+ class CchMethod:
150
+ Prentice: "CchMethod"
151
+ SelfPrentice: "CchMethod"
152
+ LinYing: "CchMethod"
153
+ IBorgan: "CchMethod"
154
+ IIBorgan: "CchMethod"
155
+
156
+ class CohortData:
157
+ @staticmethod
158
+ def new() -> "CohortData": ...
159
+ def add_subject(self, subject: Subject) -> None: ...
160
+ def get_subject(self, id: int) -> Subject: ...
161
+ def fit(self, method: "CchMethod") -> CoxPHModel: ...
162
+
163
+ class SurvFitAJ:
164
+ n_risk: list[list[float]]
165
+ n_event: list[list[float]]
166
+ n_censor: list[list[float]]
167
+ pstate: list[list[float]]
168
+ cumhaz: list[list[float]]
169
+ std_err: list[list[float]] | None
170
+ std_chaz: list[list[float]] | None
171
+ std_auc: list[list[float]] | None
172
+ influence: list[list[float]] | None
173
+ n_enter: list[list[float]] | None
174
+ n_transition: list[list[float]]
175
+
176
+ class SplitResult:
177
+ row: list[int]
178
+ interval: list[int]
179
+ start: list[float]
180
+ end: list[float]
181
+ censor: list[bool]
182
+
183
+ class ClogitDataSet:
184
+ def __init__(self) -> None: ...
185
+ def add_observation(
186
+ self,
187
+ case_control_status: int,
188
+ stratum: int,
189
+ covariates: list[float],
190
+ ) -> None: ...
191
+ def get_num_observations(self) -> int: ...
192
+ def get_num_covariates(self) -> int: ...
193
+
194
+ class ConditionalLogisticRegression:
195
+ coefficients: list[float]
196
+ max_iter: int
197
+ tol: float
198
+ iterations: int
199
+ converged: bool
200
+ def __init__(
201
+ self,
202
+ data: ClogitDataSet,
203
+ max_iter: int = 100,
204
+ tol: float = 1e-6,
205
+ ) -> None: ...
206
+ def fit(self) -> None: ...
207
+ def predict(self, covariates: list[float]) -> float: ...
208
+ def odds_ratios(self) -> list[float]: ...
209
+
210
+ class BootstrapResult:
211
+ coefficients: list[float]
212
+ ci_lower: list[float]
213
+ ci_upper: list[float]
214
+ se: list[float]
215
+ n_bootstrap: int
216
+
217
+ class CVResult:
218
+ scores: list[float]
219
+ mean_score: float
220
+ se_score: float
221
+ n_folds: int
222
+
223
+ class TestResult:
224
+ statistic: float
225
+ p_value: float
226
+ df: int
227
+ test_type: str
228
+
229
+ class ProportionalityTest:
230
+ variable_names: list[str]
231
+ chi_squared: list[float]
232
+ p_values: list[float]
233
+ global_chi_squared: float
234
+ global_p_value: float
235
+ global_df: int
236
+
237
+ class NelsonAalenResult:
238
+ time: list[float]
239
+ cumulative_hazard: list[float]
240
+ variance: list[float]
241
+ ci_lower: list[float]
242
+ ci_upper: list[float]
243
+ n_risk: list[int]
244
+ n_events: list[int]
245
+ def survival(self) -> list[float]: ...
246
+
247
+ class StratifiedKMResult:
248
+ strata: list[int]
249
+ times: list[list[float]]
250
+ survival: list[list[float]]
251
+ ci_lower: list[list[float]]
252
+ ci_upper: list[list[float]]
253
+ n_risk: list[list[int]]
254
+ n_events: list[list[int]]
255
+
256
+ class LogRankResult:
257
+ statistic: float
258
+ p_value: float
259
+ df: int
260
+ observed: list[float]
261
+ expected: list[float]
262
+ variance: float
263
+ weight_type: str
264
+
265
+ class TrendTestResult:
266
+ statistic: float
267
+ p_value: float
268
+ trend_direction: str
269
+
270
+ class SampleSizeResult:
271
+ n_total: int
272
+ n_events: int
273
+ n_per_group: list[int]
274
+ power: float
275
+ alpha: float
276
+ hazard_ratio: float
277
+ method: str
278
+
279
+ class AccrualResult:
280
+ n_total: int
281
+ accrual_time: float
282
+ followup_time: float
283
+ study_duration: float
284
+ expected_events: float
285
+
286
+ class CalibrationResult:
287
+ risk_groups: list[float]
288
+ predicted: list[float]
289
+ observed: list[float]
290
+ n_per_group: list[int]
291
+ hosmer_lemeshow_stat: float
292
+ hosmer_lemeshow_pvalue: float
293
+ calibration_slope: float
294
+ calibration_intercept: float
295
+
296
+ class PredictionResult:
297
+ linear_predictor: list[float]
298
+ risk_score: list[float]
299
+ survival_prob: list[list[float]]
300
+ times: list[float]
301
+
302
+ class RiskStratificationResult:
303
+ risk_groups: list[int]
304
+ cutpoints: list[float]
305
+ group_sizes: list[int]
306
+ group_event_rates: list[float]
307
+ group_median_risk: list[float]
308
+
309
+ class TdAUCResult:
310
+ times: list[float]
311
+ auc: list[float]
312
+ integrated_auc: float
313
+
314
+ class RMSTResult:
315
+ rmst: float
316
+ variance: float
317
+ se: float
318
+ ci_lower: float
319
+ ci_upper: float
320
+ tau: float
321
+
322
+ class RMSTComparisonResult:
323
+ rmst_diff: float
324
+ rmst_ratio: float
325
+ diff_se: float
326
+ diff_ci_lower: float
327
+ diff_ci_upper: float
328
+ ratio_ci_lower: float
329
+ ratio_ci_upper: float
330
+ p_value: float
331
+ rmst_group1: RMSTResult
332
+ rmst_group2: RMSTResult
333
+
334
+ class MedianSurvivalResult:
335
+ median: float | None
336
+ ci_lower: float | None
337
+ ci_upper: float | None
338
+ quantile: float
339
+
340
+ class CumulativeIncidenceResult:
341
+ time: list[float]
342
+ cif: list[list[float]]
343
+ variance: list[list[float]]
344
+ event_types: list[int]
345
+ n_risk: list[int]
346
+
347
+ class NNTResult:
348
+ nnt: float
349
+ nnt_ci_lower: float
350
+ nnt_ci_upper: float
351
+ absolute_risk_reduction: float
352
+ arr_ci_lower: float
353
+ arr_ci_upper: float
354
+ time_horizon: float
355
+
356
+ class LandmarkResult:
357
+ landmark_time: float
358
+ n_at_risk: int
359
+ n_excluded: int
360
+ time: list[float]
361
+ status: list[int]
362
+ original_indices: list[int]
363
+
364
+ class ConditionalSurvivalResult:
365
+ given_time: float
366
+ target_time: float
367
+ conditional_survival: float
368
+ ci_lower: float
369
+ ci_upper: float
370
+ n_at_risk: int
371
+
372
+ class HazardRatioResult:
373
+ hazard_ratio: float
374
+ ci_lower: float
375
+ ci_upper: float
376
+ se_log_hr: float
377
+ z_statistic: float
378
+ p_value: float
379
+
380
+ class SurvivalAtTimeResult:
381
+ time: float
382
+ survival: float
383
+ ci_lower: float
384
+ ci_upper: float
385
+ n_at_risk: int
386
+ n_events: int
387
+
388
+ class LifeTableResult:
389
+ interval_start: list[float]
390
+ interval_end: list[float]
391
+ n_at_risk: list[float]
392
+ n_deaths: list[float]
393
+ n_censored: list[float]
394
+ n_effective: list[float]
395
+ hazard: list[float]
396
+ survival: list[float]
397
+ se_survival: list[float]
398
+
399
+ def aareg(options: AaregOptions) -> dict[str, Any]: ...
400
+
401
+ def survfitkm(
402
+ time: list[float],
403
+ status: list[float],
404
+ weights: list[float] | None = None,
405
+ entry_times: list[float] | None = None,
406
+ position: list[int] | None = None,
407
+ reverse: bool | None = None,
408
+ computation_type: int | None = None,
409
+ ) -> SurvFitKMOutput: ...
410
+
411
+ def survreg(
412
+ time: list[float],
413
+ status: list[float],
414
+ covariates: list[list[float]],
415
+ weights: list[float] | None = None,
416
+ offsets: list[float] | None = None,
417
+ initial_beta: list[float] | None = None,
418
+ strata: list[int] | None = None,
419
+ distribution: str | None = None,
420
+ max_iter: int | None = None,
421
+ eps: float | None = None,
422
+ tol_chol: float | None = None,
423
+ ) -> SurvivalFit: ...
424
+
425
+ def survdiff2(
426
+ time: list[float],
427
+ status: list[int],
428
+ group: list[int],
429
+ strata: list[int] | None = None,
430
+ rho: float | None = None,
431
+ ) -> SurvDiffResult: ...
432
+
433
+ def coxmart(
434
+ time: list[float],
435
+ status: list[int],
436
+ score: list[float],
437
+ weights: list[float] | None = None,
438
+ strata: list[int] | None = None,
439
+ method: int | None = None,
440
+ ) -> list[float]: ...
441
+
442
+ def finegray(
443
+ tstart: list[float],
444
+ tstop: list[float],
445
+ ctime: list[float],
446
+ cprob: list[float],
447
+ extend: list[bool],
448
+ keep: list[bool],
449
+ ) -> FineGrayOutput: ...
450
+
451
+ def perform_cox_regression_frailty(
452
+ time: list[float],
453
+ event: list[int],
454
+ covariates: list[list[float]],
455
+ offset: list[float] | None = None,
456
+ weights: list[float] | None = None,
457
+ strata: list[int] | None = None,
458
+ frail: list[int] | None = None,
459
+ max_iter: int | None = None,
460
+ eps: float | None = None,
461
+ ) -> dict[str, Any]: ...
462
+
463
+ def perform_pyears_calculation(
464
+ n: int,
465
+ ny: int,
466
+ doevent: bool,
467
+ doexpect: bool,
468
+ edim: int,
469
+ efac: list[int],
470
+ edims: list[int],
471
+ ecut: list[float],
472
+ expect: list[float],
473
+ y: list[float],
474
+ wt: list[float],
475
+ data: list[float],
476
+ odim: int,
477
+ ofac: list[int],
478
+ odims: list[int],
479
+ ocut: list[float],
480
+ ) -> dict[str, Any]: ...
481
+
482
+ def perform_concordance1_calculation(
483
+ y: list[float],
484
+ wt: list[float],
485
+ indx: list[int],
486
+ ntree: int,
487
+ sortstop: list[int],
488
+ sortstart: list[int],
489
+ ) -> dict[str, Any]: ...
490
+
491
+ def perform_concordance3_calculation(
492
+ y: list[float],
493
+ wt: list[float],
494
+ indx: list[int],
495
+ ntree: int,
496
+ sortstop: list[int],
497
+ sortstart: list[int],
498
+ nvar: int,
499
+ covar: list[float],
500
+ need_residuals: bool,
501
+ ) -> dict[str, Any]: ...
502
+
503
+ def perform_concordance_calculation(
504
+ y: list[float],
505
+ wt: list[float],
506
+ indx: list[int],
507
+ ntree: int,
508
+ sortstop: list[int],
509
+ sortstart: list[int] | None = None,
510
+ nvar: int | None = None,
511
+ covar: list[float] | None = None,
512
+ need_residuals: bool = False,
513
+ ) -> dict[str, Any]: ...
514
+
515
+ def perform_score_calculation(
516
+ time_data: list[float],
517
+ covariates: list[float],
518
+ strata: list[int],
519
+ score: list[float],
520
+ weights: list[float],
521
+ method: int,
522
+ ) -> dict[str, Any]: ...
523
+
524
+ def perform_agscore3_calculation(
525
+ time_data: list[float],
526
+ covariates: list[float],
527
+ strata: list[int],
528
+ score: list[float],
529
+ weights: list[float],
530
+ method: int,
531
+ sort1: list[int],
532
+ ) -> dict[str, Any]: ...
533
+
534
+ def perform_pystep_calculation(
535
+ edim: int,
536
+ data: list[float],
537
+ efac: list[int],
538
+ edims: list[int],
539
+ ecut: list[list[float]],
540
+ tmax: float,
541
+ ) -> dict[str, Any]: ...
542
+
543
+ def perform_pystep_simple_calculation(
544
+ odim: int,
545
+ data: list[float],
546
+ ofac: list[int],
547
+ odims: list[int],
548
+ ocut: list[list[float]],
549
+ timeleft: float,
550
+ ) -> dict[str, Any]: ...
551
+
552
+ def collapse(
553
+ y: list[float],
554
+ x: list[int],
555
+ istate: list[int],
556
+ id: list[int],
557
+ wt: list[float],
558
+ order: list[int],
559
+ ) -> dict[str, Any]: ...
560
+
561
+ def cox_callback(
562
+ time1: list[float],
563
+ time2: list[float],
564
+ status: list[int],
565
+ covar: list[float],
566
+ offset: list[float],
567
+ weights: list[float],
568
+ strata: list[int],
569
+ sort1: list[int],
570
+ sort2: list[int],
571
+ method: int,
572
+ eps: float,
573
+ tol_chol: float,
574
+ beta: list[float],
575
+ ) -> dict[str, Any]: ...
576
+
577
+ def coxcount1(
578
+ time1: list[float],
579
+ time2: list[float],
580
+ status: list[int],
581
+ strata: list[int],
582
+ sort1: list[int],
583
+ sort2: list[int],
584
+ ) -> dict[str, Any]: ...
585
+
586
+ def coxcount2(
587
+ time1: list[float],
588
+ time2: list[float],
589
+ status: list[int],
590
+ strata: list[int],
591
+ sort1: list[int],
592
+ sort2: list[int],
593
+ ) -> dict[str, Any]: ...
594
+
595
+ def norisk(
596
+ time1: list[float],
597
+ time2: list[float],
598
+ status: list[int],
599
+ sort1: list[int],
600
+ sort2: list[int],
601
+ strata: list[int],
602
+ ) -> list[int]: ...
603
+
604
+ def cipoisson(k: int, time: float, p: float, method: str) -> tuple[float, float]: ...
605
+ def cipoisson_exact(k: int, time: float, p: float) -> tuple[float, float]: ...
606
+ def cipoisson_anscombe(k: int, time: float, p: float) -> tuple[float, float]: ...
607
+
608
+ def concordance(
609
+ y: list[float],
610
+ wt: list[float],
611
+ indx: list[int],
612
+ ntree: int,
613
+ sortstop: list[int],
614
+ sortstart: list[int],
615
+ strata: list[int],
616
+ ) -> dict[str, Any]: ...
617
+
618
+ def agexact(
619
+ maxiter: int,
620
+ nused: int,
621
+ nvar: int,
622
+ start: list[float],
623
+ stop: list[float],
624
+ event: list[int],
625
+ covar: list[float],
626
+ offset: list[float],
627
+ strata: list[int],
628
+ sort: list[int],
629
+ beta: list[float],
630
+ eps: float,
631
+ tol_chol: float,
632
+ ) -> dict[str, Any]: ...
633
+
634
+ def agsurv4(
635
+ y: list[float],
636
+ wt: list[float],
637
+ surv: list[float],
638
+ varh: list[float],
639
+ nrisk: list[float],
640
+ nevent: list[float],
641
+ ncensor: list[float],
642
+ strata: list[int],
643
+ ) -> dict[str, Any]: ...
644
+
645
+ def agsurv5(
646
+ y: list[float],
647
+ wt: list[float],
648
+ id: list[int],
649
+ cluster: list[int],
650
+ risk: list[float],
651
+ position: list[int],
652
+ strata: list[int],
653
+ se_type: int,
654
+ ) -> dict[str, Any]: ...
655
+
656
+ def agmart(
657
+ time: list[float],
658
+ status: list[int],
659
+ score: list[float],
660
+ weights: list[float],
661
+ strata: list[int],
662
+ method: int,
663
+ ) -> list[float]: ...
664
+
665
+ def brier(
666
+ predictions: list[float],
667
+ outcomes: list[int],
668
+ weights: list[float] | None = None,
669
+ ) -> float: ...
670
+
671
+ def integrated_brier(
672
+ predictions: list[list[float]],
673
+ outcomes: list[int],
674
+ times: list[float],
675
+ weights: list[float] | None = None,
676
+ ) -> float: ...
677
+
678
+ def tmerge(
679
+ id: list[int],
680
+ time1: list[float],
681
+ newx: list[float],
682
+ nid: list[int],
683
+ ntime: list[float],
684
+ x: list[float],
685
+ ) -> list[float]: ...
686
+
687
+ def tmerge2(
688
+ id: list[int],
689
+ time1: list[float],
690
+ nid: list[int],
691
+ ntime: list[float],
692
+ ) -> list[int]: ...
693
+
694
+ def tmerge3(
695
+ id: list[int],
696
+ miss: list[bool],
697
+ ) -> list[int]: ...
698
+
699
+ def survsplit(
700
+ tstart: list[float],
701
+ tstop: list[float],
702
+ cut: list[float],
703
+ ) -> SplitResult: ...
704
+
705
+ def schoenfeld_residuals(
706
+ y: list[float],
707
+ score: list[float],
708
+ strata: list[int],
709
+ covar: list[float],
710
+ nvar: int,
711
+ method: int = 0,
712
+ ) -> list[float]: ...
713
+
714
+ def cox_score_residuals(
715
+ y: list[float],
716
+ strata: list[int],
717
+ covar: list[float],
718
+ score: list[float],
719
+ weights: list[float],
720
+ nvar: int,
721
+ method: int = 0,
722
+ ) -> list[float]: ...
723
+
724
+ def survfitaj(
725
+ y: list[float],
726
+ sort1: list[int],
727
+ sort2: list[int],
728
+ utime: list[float],
729
+ cstate: list[int],
730
+ wt: list[float],
731
+ grp: list[int],
732
+ ngrp: int,
733
+ p0: list[float],
734
+ i0: list[float],
735
+ sefit: int,
736
+ entry: bool,
737
+ position: list[int],
738
+ hindx: list[list[int]],
739
+ trmat: list[list[int]],
740
+ t0: float,
741
+ ) -> SurvFitAJ: ...
742
+
743
+ def bootstrap_cox_ci(
744
+ time: list[float],
745
+ status: list[int],
746
+ covariates: list[list[float]],
747
+ n_bootstrap: int = 1000,
748
+ confidence_level: float = 0.95,
749
+ ) -> BootstrapResult: ...
750
+
751
+ def bootstrap_survreg_ci(
752
+ time: list[float],
753
+ status: list[int],
754
+ covariates: list[list[float]],
755
+ distribution: str = "weibull",
756
+ n_bootstrap: int = 1000,
757
+ confidence_level: float = 0.95,
758
+ ) -> BootstrapResult: ...
759
+
760
+ def cv_cox_concordance(
761
+ time: list[float],
762
+ status: list[int],
763
+ covariates: list[list[float]],
764
+ n_folds: int = 5,
765
+ ) -> CVResult: ...
766
+
767
+ def cv_survreg_loglik(
768
+ time: list[float],
769
+ status: list[int],
770
+ covariates: list[list[float]],
771
+ distribution: str = "weibull",
772
+ n_folds: int = 5,
773
+ ) -> CVResult: ...
774
+
775
+ def lrt_test(
776
+ log_likelihood_null: float,
777
+ log_likelihood_full: float,
778
+ df: int,
779
+ ) -> TestResult: ...
780
+
781
+ def wald_test_py(
782
+ coefficients: list[float],
783
+ variance_matrix: list[list[float]],
784
+ ) -> TestResult: ...
785
+
786
+ def score_test_py(
787
+ score: list[float],
788
+ information_matrix: list[list[float]],
789
+ ) -> TestResult: ...
790
+
791
+ def ph_test(
792
+ time: list[float],
793
+ status: list[int],
794
+ schoenfeld_residuals: list[list[float]],
795
+ variable_names: list[str],
796
+ ) -> ProportionalityTest: ...
797
+
798
+ def nelson_aalen_estimator(
799
+ time: list[float],
800
+ status: list[int],
801
+ weights: list[float] | None = None,
802
+ confidence_level: float | None = None,
803
+ ) -> NelsonAalenResult: ...
804
+
805
+ def stratified_kaplan_meier(
806
+ time: list[float],
807
+ status: list[int],
808
+ strata: list[int],
809
+ confidence_level: float | None = None,
810
+ ) -> StratifiedKMResult: ...
811
+
812
+ def logrank_test(
813
+ time: list[float],
814
+ status: list[int],
815
+ group: list[int],
816
+ weight_type: str | None = None,
817
+ ) -> LogRankResult: ...
818
+
819
+ def fleming_harrington_test(
820
+ time: list[float],
821
+ status: list[int],
822
+ group: list[int],
823
+ p: float,
824
+ q: float,
825
+ ) -> LogRankResult: ...
826
+
827
+ def logrank_trend(
828
+ time: list[float],
829
+ status: list[int],
830
+ group: list[int],
831
+ scores: list[float] | None = None,
832
+ ) -> TrendTestResult: ...
833
+
834
+ def sample_size_survival(
835
+ hazard_ratio: float,
836
+ power: float | None = None,
837
+ alpha: float | None = None,
838
+ allocation_ratio: float | None = None,
839
+ sided: int | None = None,
840
+ ) -> SampleSizeResult: ...
841
+
842
+ def sample_size_survival_freedman(
843
+ hazard_ratio: float,
844
+ prob_event: float,
845
+ power: float | None = None,
846
+ alpha: float | None = None,
847
+ allocation_ratio: float | None = None,
848
+ sided: int | None = None,
849
+ ) -> SampleSizeResult: ...
850
+
851
+ def power_survival(
852
+ n_events: int,
853
+ hazard_ratio: float,
854
+ alpha: float | None = None,
855
+ allocation_ratio: float | None = None,
856
+ sided: int | None = None,
857
+ ) -> float: ...
858
+
859
+ def expected_events(
860
+ n_total: int,
861
+ hazard_control: float,
862
+ hazard_ratio: float,
863
+ accrual_time: float,
864
+ followup_time: float,
865
+ allocation_ratio: float | None = None,
866
+ dropout_rate: float | None = None,
867
+ ) -> AccrualResult: ...
868
+
869
+ def calibration(
870
+ predicted_risk: list[float],
871
+ observed_event: list[int],
872
+ n_groups: int | None = None,
873
+ ) -> CalibrationResult: ...
874
+
875
+ def predict_cox(
876
+ coef: list[float],
877
+ x: list[list[float]],
878
+ baseline_hazard: list[float],
879
+ baseline_times: list[float],
880
+ pred_times: list[float],
881
+ ) -> PredictionResult: ...
882
+
883
+ def risk_stratification(
884
+ risk_scores: list[float],
885
+ events: list[int],
886
+ n_groups: int | None = None,
887
+ ) -> RiskStratificationResult: ...
888
+
889
+ def td_auc(
890
+ time: list[float],
891
+ status: list[int],
892
+ risk_score: list[float],
893
+ eval_times: list[float],
894
+ ) -> TdAUCResult: ...
895
+
896
+ def rmst(
897
+ time: list[float],
898
+ status: list[int],
899
+ tau: float,
900
+ confidence_level: float | None = None,
901
+ ) -> RMSTResult: ...
902
+
903
+ def rmst_comparison(
904
+ time: list[float],
905
+ status: list[int],
906
+ group: list[int],
907
+ tau: float,
908
+ confidence_level: float | None = None,
909
+ ) -> RMSTComparisonResult: ...
910
+
911
+ def survival_quantile(
912
+ time: list[float],
913
+ status: list[int],
914
+ quantile: float | None = None,
915
+ confidence_level: float | None = None,
916
+ ) -> MedianSurvivalResult: ...
917
+
918
+ def cumulative_incidence(
919
+ time: list[float],
920
+ status: list[int],
921
+ ) -> CumulativeIncidenceResult: ...
922
+
923
+ def number_needed_to_treat(
924
+ time: list[float],
925
+ status: list[int],
926
+ group: list[int],
927
+ time_horizon: float,
928
+ confidence_level: float | None = None,
929
+ ) -> NNTResult: ...
930
+
931
+ def landmark_analysis(
932
+ time: list[float],
933
+ status: list[int],
934
+ landmark_time: float,
935
+ ) -> LandmarkResult: ...
936
+
937
+ def conditional_survival(
938
+ time: list[float],
939
+ status: list[int],
940
+ given_time: float,
941
+ target_time: float,
942
+ confidence_level: float | None = None,
943
+ ) -> ConditionalSurvivalResult: ...
944
+
945
+ def hazard_ratio(
946
+ time: list[float],
947
+ status: list[int],
948
+ group: list[int],
949
+ confidence_level: float | None = None,
950
+ ) -> HazardRatioResult: ...
951
+
952
+ def survival_at_times(
953
+ time: list[float],
954
+ status: list[int],
955
+ eval_times: list[float],
956
+ confidence_level: float | None = None,
957
+ ) -> list[SurvivalAtTimeResult]: ...
958
+
959
+ def life_table(
960
+ time: list[float],
961
+ status: list[int],
962
+ breaks: list[float],
963
+ ) -> LifeTableResult: ...