scikit-survival 0.26.0__cp312-cp312-win_amd64.whl → 0.27.0__cp312-cp312-win_amd64.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.
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: scikit-survival
3
- Version: 0.26.0
3
+ Version: 0.27.0
4
4
  Summary: Survival analysis built on top of scikit-learn
5
5
  Author-email: Sebastian Pölsterl <sebp@k-d-w.org>
6
6
  License-Expression: GPL-3.0-or-later
@@ -31,16 +31,16 @@ License-File: COPYING
31
31
  Requires-Dist: ecos
32
32
  Requires-Dist: joblib
33
33
  Requires-Dist: numexpr
34
- Requires-Dist: numpy
34
+ Requires-Dist: numpy>=2.0.0
35
35
  Requires-Dist: osqp>=1.0.2
36
- Requires-Dist: pandas>=2.0.0
37
- Requires-Dist: scipy>=1.3.2
38
- Requires-Dist: scikit-learn<1.8,>=1.6.1
36
+ Requires-Dist: pandas>=2.2.0
37
+ Requires-Dist: scipy>=1.13.0
38
+ Requires-Dist: scikit-learn<1.9,>=1.8.0
39
39
  Dynamic: license-file
40
40
 
41
41
  |License| |Docs| |DOI|
42
42
 
43
- |build-tests| |build-windows| |Codecov| |Codacy|
43
+ |build-tests| |Codecov| |Codacy|
44
44
 
45
45
  ***************
46
46
  scikit-survival
@@ -76,10 +76,10 @@ Requirements
76
76
  - ecos
77
77
  - joblib
78
78
  - numexpr
79
- - numpy
79
+ - numpy 2.0.0 or later
80
80
  - osqp
81
- - pandas 2.0.0 or later
82
- - scikit-learn 1.6 or 1.7
81
+ - pandas 2.2.0 or later
82
+ - scikit-learn 1.8
83
83
  - scipy
84
84
  - C/C++ compiler
85
85
 
@@ -178,8 +178,4 @@ Please cite the following paper if you are using **scikit-survival**.
178
178
  :target: https://github.com/sebp/scikit-survival/actions?query=workflow%3Atests+branch%3Amaster
179
179
  :alt: GitHub Actions Tests Status
180
180
 
181
- .. |build-windows| image:: https://ci.appveyor.com/api/projects/status/github/sebp/scikit-survival?branch=master&svg=true
182
- :target: https://ci.appveyor.com/project/sebp/scikit-survival
183
- :alt: Windows Build Status on AppVeyor
184
-
185
181
  .. _survival analysis: https://en.wikipedia.org/wiki/Survival_analysis
@@ -1,4 +1,4 @@
1
- scikit_survival-0.26.0.dist-info/licenses/COPYING,sha256=Czg9WmPaZE9ijZnDOXbqZIftiaqlnwsyV5kt6sEXHms,35821
1
+ scikit_survival-0.27.0.dist-info/licenses/COPYING,sha256=Czg9WmPaZE9ijZnDOXbqZIftiaqlnwsyV5kt6sEXHms,35821
2
2
  sksurv/__init__.py,sha256=y_H9kC05lnKq8z8qPnZJZVt79ILJhMH4bkCsohCbvV8,5336
3
3
  sksurv/base.py,sha256=FqiHfSFH6fdRzi49Eu3HT08hYxd9yrbdvX0-wSse9qc,4488
4
4
  sksurv/column.py,sha256=Kuh1P2mQhHsZgohl2V1iLEGyjIZ3809QqIZa6XDZU7M,7073
@@ -6,13 +6,13 @@ sksurv/compare.py,sha256=XmVNu-cnXk8M9rwm-qgWnxO_pgzDIH4lcZWkd7sVHJM,4543
6
6
  sksurv/docstrings.py,sha256=FGFChjoUjOMWxBz1_mZ2ffgond4e-cGMq8NfOM8S7oc,3400
7
7
  sksurv/exceptions.py,sha256=WopRsYNia5MQTvvVXL3U_nf418t29pplfBz6HFtmt1M,819
8
8
  sksurv/functions.py,sha256=lOquoM6P6B8WCSBWZFyT0uuKBRXl7zSRkzWwQuHsxTU,4012
9
- sksurv/metrics.py,sha256=HavsO3Ekh_ZZUlJbvzA_LPZA8ViI49pBJQSnDEHcHOI,42269
9
+ sksurv/metrics.py,sha256=RZBRQaMBSYxSNdcfPrrxWnlQgBssjEj-3lKT7ul4gOU,42277
10
10
  sksurv/nonparametric.py,sha256=bxig1gErSkrhvY1HUP99C5wzPS6JapVYBvOc5b7yUFw,32659
11
11
  sksurv/preprocessing.py,sha256=zjvxrpxZxBgA8QOP5yBc_dAE5QWLRSMerbKJBE5So2o,7169
12
- sksurv/testing.py,sha256=ygxdvA4IZsPtvQtN39hh0kwg2jzFROWNNfjXvIXez3s,5943
12
+ sksurv/testing.py,sha256=wxHys1bjqzZKrZ5-rp2sXKjlcTNh-fHmSks-fT_sPjs,6257
13
13
  sksurv/util.py,sha256=Ml7t7u7qONmohFTEAPMQI6IClv3IpJa6MIs_bL5FoME,16225
14
14
  sksurv/bintrees/__init__.py,sha256=z0GwaTPCzww2H2aXF28ubppw0Oc4umNTAlFAKu1VBJc,742
15
- sksurv/bintrees/_binarytrees.cp312-win_amd64.pyd,sha256=w9KFz6R3YPxZlnLNhl2LmlzDhfvGzZwGHPpZkfUCB2Q,65536
15
+ sksurv/bintrees/_binarytrees.cp312-win_amd64.pyd,sha256=z__jMWZoovYuZHoMXR39AivNolrgKDUCZGVV2xlZVgg,65536
16
16
  sksurv/datasets/__init__.py,sha256=lDHdxi0FcMHWKyWTovynHnV5B3B5Y4qh8pNRk9to9nE,373
17
17
  sksurv/datasets/base.py,sha256=TKMgBrhD0bB0pldgzVgaW58eEa1WSfIq4vId3o2XlQI,26236
18
18
  sksurv/datasets/data/GBSG2.arff,sha256=oX_UM7Qy841xBOArXBkUPLzIxNTvdtIJqpxXsqGGw9Q,26904
@@ -24,18 +24,18 @@ sksurv/datasets/data/flchain.arff,sha256=4LVUyEe-45ozaWPy0VkN-1js_MNsKw1gs2E-JRy
24
24
  sksurv/datasets/data/veteran.arff,sha256=LxZtbmq4I82rcB24JeJTYRtlgwPc3vM2OX5hg-q7xTw,5408
25
25
  sksurv/datasets/data/whas500.arff,sha256=dvqRzx-nwgSVJZxNVE2zelnt7l3xgzFtMucB7Wux574,28292
26
26
  sksurv/ensemble/__init__.py,sha256=aBjRTFm8UE5sTew292-qcplLUCc6owAfY6osWlj-VSM,193
27
- sksurv/ensemble/_coxph_loss.cp312-win_amd64.pyd,sha256=d8WDxLbXobYguDUKJoSJFzW_3P72dkq_wyx8ignSxvk,142336
27
+ sksurv/ensemble/_coxph_loss.cp312-win_amd64.pyd,sha256=1ffrgoRc5bwq4GYnl932b5Ucwxr0Iovb5rDLzPm4I4c,142336
28
28
  sksurv/ensemble/boosting.py,sha256=PierryBGYz_RBHuhBpwImQpxiLCsuZm73FrSPTTBgUg,63136
29
29
  sksurv/ensemble/forest.py,sha256=esiN6cUajfzdw-eMiXmwm9Eljs59Z0y1hmf83s2xx5Q,36170
30
30
  sksurv/ensemble/survival_loss.py,sha256=v3tSou5t1YY6lBydAZYZ66DLqAirvRhErqW1dZYrTWE,6093
31
31
  sksurv/io/__init__.py,sha256=dalzZGTrvekCM8wwsB636rg1dwDkQtDWaBOw7TpHr5U,94
32
32
  sksurv/io/arffread.py,sha256=qg76GNSN0OwMTsjsjoIxAVORyn3QKx6St-h4kinQOGM,2841
33
- sksurv/io/arffwrite.py,sha256=uZxsLtGdYyMsY1T62HRCNrgAOa30OBYzbbpArvcfq40,5616
33
+ sksurv/io/arffwrite.py,sha256=1s2XoXRaTkVj7XyJ8FDHz2uCg2oqmC9V0PMW3_AkJ6A,5611
34
34
  sksurv/kernels/__init__.py,sha256=R1if2sVd_0_f6LniIGUR0tipIfzRKpzgGYnvrVZZvHM,78
35
- sksurv/kernels/_clinical_kernel.cp312-win_amd64.pyd,sha256=1dqsClx8MAUf_CQMdpS81wCcjgxChoAtMMVfMAqO7js,150016
35
+ sksurv/kernels/_clinical_kernel.cp312-win_amd64.pyd,sha256=GTM3OHq0RWw5aBm4NhfFQpnh3KYw0mPtovcTgSoGRks,150016
36
36
  sksurv/kernels/clinical.py,sha256=8FzyMVLdj68YXdEjj_e1IA9_fR2-9yOabfEbPv4VdJk,11800
37
37
  sksurv/linear_model/__init__.py,sha256=dO6Mr3wXk6Q-KQEuhpdgMeY3ji8ZVdgC-SeSRnrJdmw,155
38
- sksurv/linear_model/_coxnet.cp312-win_amd64.pyd,sha256=N0T2vLQqF1NbWi0nCx0Ts8j9LfbT7oOy0PCisJaui_Q,94208
38
+ sksurv/linear_model/_coxnet.cp312-win_amd64.pyd,sha256=coDtBjFl9B2juFbsBspBbPAb7qeiUfnBvAjLSb-GuQY,94208
39
39
  sksurv/linear_model/aft.py,sha256=z3GhH6YztcF25v3A2CJAqIK19XEfqUPV-nI0bKgb6h0,7766
40
40
  sksurv/linear_model/coxnet.py,sha256=M5IMDA73LHjqxM8jzA4cya7dIKUsOa6FlonLlnFKdDU,23148
41
41
  sksurv/linear_model/coxph.py,sha256=ckZSYTl6e_NIBzGi0WvbF9AyfZyvZ30x1VX-HpHdzbU,22826
@@ -44,15 +44,15 @@ sksurv/meta/base.py,sha256=AdhIkZi9PvucZ3B2lhhFQpQbwp8EUCDUVOiaev_UsX8,1472
44
44
  sksurv/meta/ensemble_selection.py,sha256=MBFTcvO9FKJMJkr5Ys6MHp-BQPSq0T9RcrteZjZRHWA,27292
45
45
  sksurv/meta/stacking.py,sha256=t5tDtSDKEHURJqdLpo1-L7cQZv6d5N9fbMi87xMj_Dw,13534
46
46
  sksurv/svm/__init__.py,sha256=CSceYEcBPGKRcJZ4R0u7DzwictGln_weLIsbt2i5xeU,339
47
- sksurv/svm/_minlip.cp312-win_amd64.pyd,sha256=et0SnGMKWaeH4KHdcn5G8IEY96Nb9BBB4Hu-F-13osM,147968
48
- sksurv/svm/_prsvm.cp312-win_amd64.pyd,sha256=ROI2f90EEmkFGujVW1U9HXE-GJCnQkKHCrDU2W0XafY,145408
47
+ sksurv/svm/_minlip.cp312-win_amd64.pyd,sha256=o73KZQ94BdN4cdUH_YZ40Kz0ojzl-spoVVw9vxLPvQw,148480
48
+ sksurv/svm/_prsvm.cp312-win_amd64.pyd,sha256=EVLvt_oUswT3n_Bp_qJUsmCW4u2iVIw9W40t1acAFXI,145408
49
49
  sksurv/svm/minlip.py,sha256=ZgUP_Zx5oduh1VhC-OhYjlJ28J1VhPUHReFirHnEcJw,25671
50
50
  sksurv/svm/naive_survival_svm.py,sha256=B7NHFE_BNpyzQKJjUmLZBqmw6sbqlHrGS_6iQLKu2yA,9568
51
51
  sksurv/svm/survival_svm.py,sha256=fgF1lSbt_jTy9Ykigg4fEWrsmqae_NyO401KTNG2Kpo,46222
52
52
  sksurv/tree/__init__.py,sha256=ozb0fhURX-lpiSiHZd0DMnjkqhC0XOC2CTZq0hEZLPw,65
53
- sksurv/tree/_criterion.cp312-win_amd64.pyd,sha256=octAocqCfwCQDt8nuqM6rTFQsi6zW6NgpWYG-kpZtao,163840
53
+ sksurv/tree/_criterion.cp312-win_amd64.pyd,sha256=ihmEiHlrJL02uD_IsXaMoP-4xKHU5LdS11XbDtS5iX0,167424
54
54
  sksurv/tree/tree.py,sha256=4FMKf862hGaZnObIytz_XiLL2fPD11Z0w5zUO2zp7cM,32782
55
- scikit_survival-0.26.0.dist-info/METADATA,sha256=XFQGFOQAxBnsmOaJPL8UTXCP66g8KbSiKXhs9Jwe8G8,7365
56
- scikit_survival-0.26.0.dist-info/WHEEL,sha256=8UP9x9puWI0P1V_d7K2oMTBqfeLNm21CTzZ_Ptr0NXU,101
57
- scikit_survival-0.26.0.dist-info/top_level.txt,sha256=fPkcFA-XQGbwnD_ZXOvaOWmSd34Qezr26Mn99nYPvAg,7
58
- scikit_survival-0.26.0.dist-info/RECORD,,
55
+ scikit_survival-0.27.0.dist-info/METADATA,sha256=xaC_67dBglseZ5obMIN9AOyYtlMJSwf7dMHNUrUBQS8,7131
56
+ scikit_survival-0.27.0.dist-info/WHEEL,sha256=4SIlGrTWEevUMa-6zmQ9aBHcYatnnG9aOHYILIJiCXU,102
57
+ scikit_survival-0.27.0.dist-info/top_level.txt,sha256=fPkcFA-XQGbwnD_ZXOvaOWmSd34Qezr26Mn99nYPvAg,7
58
+ scikit_survival-0.27.0.dist-info/RECORD,,
@@ -1,5 +1,5 @@
1
1
  Wheel-Version: 1.0
2
- Generator: setuptools (80.9.0)
2
+ Generator: setuptools (80.10.2)
3
3
  Root-Is-Purelib: false
4
4
  Tag: cp312-cp312-win_amd64
5
5
 
sksurv/io/arffwrite.py CHANGED
@@ -172,7 +172,7 @@ def _write_data(data, fp):
172
172
  return "?"
173
173
  return str(x)
174
174
 
175
- data = data.applymap(to_str)
175
+ data = data.map(to_str)
176
176
  n_rows = data.shape[0]
177
177
  for i in range(n_rows):
178
178
  str_values = list(data.iloc[i, :].apply(_check_str_array))
sksurv/metrics.py CHANGED
@@ -510,7 +510,7 @@ def cumulative_dynamic_auc(survival_train, survival_test, estimate, times, tied_
510
510
  # to make sure that the curve starts at (0, 0)
511
511
  tp_no_ties = np.r_[0, tp_no_ties]
512
512
  fp_no_ties = np.r_[0, fp_no_ties]
513
- scores[i] = np.trapz(tp_no_ties, fp_no_ties)
513
+ scores[i] = np.trapezoid(tp_no_ties, fp_no_ties)
514
514
 
515
515
  if n_times == 1:
516
516
  mean_auc = scores[0]
@@ -780,7 +780,7 @@ def integrated_brier_score(survival_train, survival_test, estimate, times):
780
780
  raise ValueError("At least two time points must be given")
781
781
 
782
782
  # Computing the IBS
783
- ibs_value = np.trapz(brier_scores, times) / (times[-1] - times[0])
783
+ ibs_value = np.trapezoid(brier_scores, times) / (times[-1] - times[0])
784
784
 
785
785
  return ibs_value
786
786
 
Binary file
Binary file
sksurv/testing.py CHANGED
@@ -119,7 +119,7 @@ class FixtureParameterFactory:
119
119
  return cases
120
120
 
121
121
 
122
- def check_module_minimum_version(module, version_str):
122
+ def check_module_minimum_version(module, min_version_str, max_version_str=None):
123
123
  """
124
124
  Check whether a module of a specified minimum version is available.
125
125
 
@@ -127,8 +127,10 @@ def check_module_minimum_version(module, version_str):
127
127
  ----------
128
128
  module : str
129
129
  Name of the module.
130
- version_str : str
130
+ min_version_str : str
131
131
  Minimum version of the module.
132
+ max_version_str : str, optional
133
+ Maximum version of the module (excluding).
132
134
 
133
135
  Returns
134
136
  -------
@@ -137,14 +139,17 @@ def check_module_minimum_version(module, version_str):
137
139
  """
138
140
  try:
139
141
  module_version = parse(version(module))
140
- required_version = parse(version_str)
141
- return module_version >= required_version
142
+ required_min_version = parse(min_version_str)
143
+ if max_version_str is None:
144
+ return module_version >= required_min_version
145
+ required_max_version = parse(max_version_str)
146
+ return required_min_version <= module_version < required_max_version
142
147
  except PackageNotFoundError: # pragma: no cover
143
148
  return False
144
149
 
145
150
 
146
151
  def get_pandas_infer_string_context():
147
- if check_module_minimum_version("pandas", "2.3.0"):
152
+ if check_module_minimum_version("pandas", "2.3.0", "3.0.0"):
148
153
  return (
149
154
  pytest.param(pd.option_context("future.infer_string", False), id="infer_string=False"),
150
155
  pytest.param(pd.option_context("future.infer_string", True), id="infer_string=True"),
Binary file