scikit-survival 0.22.2__cp39-cp39-win_amd64.whl → 0.23.1__cp39-cp39-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.1
2
2
  Name: scikit-survival
3
- Version: 0.22.2
3
+ Version: 0.23.1
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: GNU GENERAL PUBLIC LICENSE
@@ -694,13 +694,13 @@ Classifier: Programming Language :: C++
694
694
  Classifier: Programming Language :: Cython
695
695
  Classifier: Programming Language :: Python
696
696
  Classifier: Programming Language :: Python :: 3
697
- Classifier: Programming Language :: Python :: 3.8
698
697
  Classifier: Programming Language :: Python :: 3.9
699
698
  Classifier: Programming Language :: Python :: 3.10
700
699
  Classifier: Programming Language :: Python :: 3.11
700
+ Classifier: Programming Language :: Python :: 3.12
701
701
  Classifier: Topic :: Software Development
702
702
  Classifier: Topic :: Scientific/Engineering
703
- Requires-Python: >=3.8
703
+ Requires-Python: >=3.9
704
704
  Description-Content-Type: text/x-rst
705
705
  License-File: COPYING
706
706
  Requires-Dist: ecos
@@ -708,20 +708,19 @@ Requires-Dist: joblib
708
708
  Requires-Dist: numexpr
709
709
  Requires-Dist: numpy
710
710
  Requires-Dist: osqp !=0.6.0,!=0.6.1
711
- Requires-Dist: pandas >=1.0.5
711
+ Requires-Dist: pandas >=1.4.0
712
712
  Requires-Dist: scipy >=1.3.2
713
- Requires-Dist: scikit-learn <1.4,>=1.3.0
714
- Requires-Dist: importlib-resources >=1.3 ; python_version < "3.9"
713
+ Requires-Dist: scikit-learn <1.6,>=1.4.0
715
714
  Provides-Extra: dev
716
715
  Requires-Dist: black[jupyter] ; extra == 'dev'
717
716
  Requires-Dist: build ; extra == 'dev'
718
717
  Requires-Dist: coverage ; extra == 'dev'
719
- Requires-Dist: cython >=0.29 ; extra == 'dev'
718
+ Requires-Dist: Cython >=3.0.10 ; extra == 'dev'
720
719
  Requires-Dist: packaging ; extra == 'dev'
721
720
  Requires-Dist: pre-commit ; extra == 'dev'
722
721
  Requires-Dist: pytest ; extra == 'dev'
723
722
  Requires-Dist: ruff ; extra == 'dev'
724
- Requires-Dist: setuptools-scm >=6.4 ; extra == 'dev'
723
+ Requires-Dist: setuptools-scm >=8 ; extra == 'dev'
725
724
  Requires-Dist: tomli ; extra == 'dev'
726
725
  Requires-Dist: tox ; extra == 'dev'
727
726
  Provides-Extra: docs
@@ -729,15 +728,15 @@ Requires-Dist: ipython !=8.7.0 ; extra == 'docs'
729
728
  Requires-Dist: nbsphinx >=0.9.2 ; extra == 'docs'
730
729
  Requires-Dist: docutils ; extra == 'docs'
731
730
  Requires-Dist: setuptools-scm ; extra == 'docs'
732
- Requires-Dist: sphinx ~=6.2.1 ; extra == 'docs'
733
- Requires-Dist: pydata-sphinx-theme ~=0.13.3 ; extra == 'docs'
731
+ Requires-Dist: sphinx ~=7.3.7 ; extra == 'docs'
732
+ Requires-Dist: pydata-sphinx-theme ~=0.15.2 ; extra == 'docs'
734
733
  Requires-Dist: sphinxcontrib-spelling ; extra == 'docs'
735
- Requires-Dist: sphinx-design ~=0.4.1 ; extra == 'docs'
734
+ Requires-Dist: sphinx-design ~=0.5.0 ; extra == 'docs'
736
735
  Requires-Dist: sphinx-copybutton ~=0.5.2 ; extra == 'docs'
737
736
  Provides-Extra: nbval
738
737
  Requires-Dist: ipykernel ; extra == 'nbval'
739
738
  Requires-Dist: ipython !=8.7.0 ; extra == 'nbval'
740
- Requires-Dist: matplotlib ~=3.6.2 ; extra == 'nbval'
739
+ Requires-Dist: matplotlib ~=3.8.0 ; extra == 'nbval'
741
740
  Requires-Dist: nbformat ; extra == 'nbval'
742
741
  Requires-Dist: nbval >=0.10.0 ; extra == 'nbval'
743
742
  Requires-Dist: seaborn ~=0.11.2 ; extra == 'nbval'
@@ -776,15 +775,15 @@ this unique characteristic of such a dataset into account.
776
775
  Requirements
777
776
  ============
778
777
 
779
- - Python 3.8 or later
778
+ - Python 3.9 or later
780
779
  - ecos
781
780
  - joblib
782
781
  - numexpr
783
- - numpy 1.17.3 or later
782
+ - numpy
784
783
  - osqp
785
- - pandas 1.0.5 or later
786
- - scikit-learn 1.3
787
- - scipy 1.3.2 or later
784
+ - pandas 1.4.0 or later
785
+ - scikit-learn 1.4 or 1.5
786
+ - scipy
788
787
  - C/C++ compiler
789
788
 
790
789
  ============
@@ -794,7 +793,7 @@ Installation
794
793
  The easiest way to install scikit-survival is to use
795
794
  `Anaconda <https://www.anaconda.com/distribution/>`_ by running::
796
795
 
797
- conda install -c sebp scikit-survival
796
+ conda install -c conda-forge scikit-survival
798
797
 
799
798
  Alternatively, you can install scikit-survival from source
800
799
  following `this guide <https://scikit-survival.readthedocs.io/en/stable/install.html#from-source>`_.
@@ -867,7 +866,7 @@ Please cite the following paper if you are using **scikit-survival**.
867
866
  :alt: codecov
868
867
 
869
868
  .. |Codacy| image:: https://api.codacy.com/project/badge/Grade/17242004cdf6422c9a1052bf1ec63104
870
- :target: https://www.codacy.com/gh/sebp/scikit-survival/dashboard?utm_source=github.com&amp;utm_medium=referral&amp;utm_content=sebp/scikit-survival&amp;utm_campaign=Badge_Grade
869
+ :target: https://app.codacy.com/gh/sebp/scikit-survival/dashboard?utm_source=gh&utm_medium=referral&utm_content=&utm_campaign=Badge_grade
871
870
  :alt: Codacy Badge
872
871
 
873
872
  .. |Docs| image:: https://readthedocs.org/projects/scikit-survival/badge/?version=latest
@@ -1,18 +1,18 @@
1
1
  sksurv/__init__.py,sha256=ylL6ChkAkHWnuIFWG5lky_d_ZNFfukUUt5tU0HVJfgo,3710
2
- sksurv/base.py,sha256=4T5WgwWl4sPO3HvlfLZ1dm5CN5ZPcnaVOfvJYG08YIc,3735
3
- sksurv/column.py,sha256=KuzS4ayH5VWvT13n_7S7uafNI2VqQsMSJxKlMC95V9w,7028
2
+ sksurv/base.py,sha256=0HXvIivawJMsby7UxnLUFOKbKvurrJEM0KrMIYmqyBU,3801
3
+ sksurv/column.py,sha256=hojN9vVDw2ka5LRueyc3f1g12AjwuzSIiPqGP5js2Nk,6670
4
4
  sksurv/compare.py,sha256=WbJb2NFXMncgkcrNKq3Xgo5YqW_klgkDkKJc219aJiw,4212
5
5
  sksurv/exceptions.py,sha256=WopRsYNia5MQTvvVXL3U_nf418t29pplfBz6HFtmt1M,819
6
6
  sksurv/functions.py,sha256=x63NGGVQVqtFiEG-wXW569q1U_kKJFwbOb9-8BcfpaM,3780
7
- sksurv/metrics.py,sha256=fT-PLqo4THSuBJC1jo4FiMjwXgUgIReTxVcaoJYZ6Yo,38409
8
- sksurv/nonparametric.py,sha256=e1ESEJFL-3pHGXquXLKcp8h7ATyHxXerfAuY_3MruGo,19353
7
+ sksurv/metrics.py,sha256=rAA_UmN-ddNm52OE3pcixZcfg_XKFig7CeQ2eQw7ArI,38379
8
+ sksurv/nonparametric.py,sha256=aZo5tXkv8a6Fup7NKZzSqW9GEtpCfwk82B2RCWvD0QI,19339
9
9
  sksurv/preprocessing.py,sha256=WGrL3ngfskFuMqdMxr7Dkw5Bj8NWij_xZuLRqDdz5Eo,5315
10
- sksurv/testing.py,sha256=n85UI7pniFfd0A20RB2R1DjC_DMIfbQdGxDxtGRQ8Fs,4180
10
+ sksurv/testing.py,sha256=9qoUAeRfp3tb4Zg7oCHkBS0DJXkIuxdflRLoV7NEfek,4403
11
11
  sksurv/util.py,sha256=S8GnCvsaOUqjbzFXQylXCUnQSfoy057H8FQ4XidYqgI,12276
12
12
  sksurv/bintrees/__init__.py,sha256=z0GwaTPCzww2H2aXF28ubppw0Oc4umNTAlFAKu1VBJc,742
13
- sksurv/bintrees/_binarytrees.cp39-win_amd64.pyd,sha256=9XA4wgZDGGgRqC1XYg3AA2v8cqnAOgQCdJAjc1P3H10,68608
13
+ sksurv/bintrees/_binarytrees.cp39-win_amd64.pyd,sha256=30uo_DC-lbLBObTEFnzmE7Xxe4IvZ1VSWVJtwcl-Ghw,68608
14
14
  sksurv/datasets/__init__.py,sha256=ZIU1vPRhO2CYpTf-Lbr64S73JkR1CAP7aVBO_wGHHAY,313
15
- sksurv/datasets/base.py,sha256=bVSE6Eg1HLvQZwxLhc5IxZtQOEJaag6RYIroaLBtbfI,15234
15
+ sksurv/datasets/base.py,sha256=l4xiUUNkYbY-JhpU2En6Kr7AZ29cb-KVUxS6SL-RxAk,15126
16
16
  sksurv/datasets/data/GBSG2.arff,sha256=oX_UM7Qy841xBOArXBkUPLzIxNTvdtIJqpxXsqGGw9Q,26904
17
17
  sksurv/datasets/data/actg320.arff,sha256=BwIq5q_i_75G2rPFQ6TjO0bsiR8MwA6wPouG-SX7TUo,46615
18
18
  sksurv/datasets/data/breast_cancer_GSE7390-metastasis.arff,sha256=1dNSJczfgZOjp4Ya0SKREreyGorzWd-rm1ryihwIAck,265026
@@ -20,18 +20,18 @@ sksurv/datasets/data/flchain.arff,sha256=4LVUyEe-45ozaWPy0VkN-1js_MNsKw1gs2E-JRy
20
20
  sksurv/datasets/data/veteran.arff,sha256=LxZtbmq4I82rcB24JeJTYRtlgwPc3vM2OX5hg-q7xTw,5408
21
21
  sksurv/datasets/data/whas500.arff,sha256=dvqRzx-nwgSVJZxNVE2zelnt7l3xgzFtMucB7Wux574,28292
22
22
  sksurv/ensemble/__init__.py,sha256=aBjRTFm8UE5sTew292-qcplLUCc6owAfY6osWlj-VSM,193
23
- sksurv/ensemble/_coxph_loss.cp39-win_amd64.pyd,sha256=ANUWXm78pndwaxVrnTlejslJYRYBl4XAnqpXm_mFwUE,149504
24
- sksurv/ensemble/boosting.py,sha256=nILMMJQnJ46psx3apcrwnOV5EZ2AKNkx7FAdTSz7iwo,53672
25
- sksurv/ensemble/forest.py,sha256=gBxayDinoqMq_3ymwUvJVaKP4ghPTUo5hlli0TSPx5Q,35289
26
- sksurv/ensemble/survival_loss.py,sha256=kQOjF_kZQ_ilrHP9ogp4ZqeBM27gRfUk084_-zRuiTo,6515
23
+ sksurv/ensemble/_coxph_loss.cp39-win_amd64.pyd,sha256=J0X-IVzklB5uO9pN4YQGqd7W_2Uraz_YrK4nLDz4484,151040
24
+ sksurv/ensemble/boosting.py,sha256=T2DWIPGMK9S_BX9dIuhnptH3v2P5jfCv_d-wXR0l3zE,63690
25
+ sksurv/ensemble/forest.py,sha256=su6MFuBhD2mMM6SAAq8_ixEv4i7kYm40gcBdNeXmw14,36330
26
+ sksurv/ensemble/survival_loss.py,sha256=v3tSou5t1YY6lBydAZYZ66DLqAirvRhErqW1dZYrTWE,6093
27
27
  sksurv/io/__init__.py,sha256=dalzZGTrvekCM8wwsB636rg1dwDkQtDWaBOw7TpHr5U,94
28
28
  sksurv/io/arffread.py,sha256=47rFxaZuavV0cbFUrZ_NjSmSByWXqkwZ4MkpFK4jw_w,1897
29
29
  sksurv/io/arffwrite.py,sha256=Dkvnr_zz4i23xGPDTwxTAOOggbL1GxtgSi1em6kVp0Q,4609
30
30
  sksurv/kernels/__init__.py,sha256=R1if2sVd_0_f6LniIGUR0tipIfzRKpzgGYnvrVZZvHM,78
31
- sksurv/kernels/_clinical_kernel.cp39-win_amd64.pyd,sha256=wGlEGxNrmzjTtoh3ldE9uEKCbdULSFbMZqugCCiY_sw,156160
32
- sksurv/kernels/clinical.py,sha256=tkc-usSB9wn6KMmNi45F992r9wX4mKNXEEKSvfJX_Mk,10910
31
+ sksurv/kernels/_clinical_kernel.cp39-win_amd64.pyd,sha256=XscUnLBFhTgd3Iac8bl3Jtn4cFToU27T2n8LEbl7JcQ,157696
32
+ sksurv/kernels/clinical.py,sha256=kVAMx95rgrerfvGlmuNgW4hc3HojTruKoNnhuaeLkGw,11046
33
33
  sksurv/linear_model/__init__.py,sha256=dO6Mr3wXk6Q-KQEuhpdgMeY3ji8ZVdgC-SeSRnrJdmw,155
34
- sksurv/linear_model/_coxnet.cp39-win_amd64.pyd,sha256=BtD7k2kt7fZ79Ne_KHN9t85mVqDzYg1tfPQyNH8fehQ,91136
34
+ sksurv/linear_model/_coxnet.cp39-win_amd64.pyd,sha256=zNBEO3bpUAyawI-X6NN-sfd8lQElEWKfIktbk3Ml3tI,92672
35
35
  sksurv/linear_model/aft.py,sha256=oWtLF-WCCrdmjJtb9e91SHA-be_IQPTf7Kf9VWoXQB8,7616
36
36
  sksurv/linear_model/coxnet.py,sha256=ZJAsJImSoGCL6HJ9uXQdph8sDLAZakcIvMuzRy28F4M,20727
37
37
  sksurv/linear_model/coxph.py,sha256=PeYw7I_EHSgV3kriUnEhJg6CIdISkFk9ewlzijHC8Nw,21475
@@ -40,16 +40,16 @@ sksurv/meta/base.py,sha256=AdhIkZi9PvucZ3B2lhhFQpQbwp8EUCDUVOiaev_UsX8,1472
40
40
  sksurv/meta/ensemble_selection.py,sha256=NTXzq6xvwL5IwdxyjNVkPOgzU_9lzdsyFKCq0YbdOXo,24673
41
41
  sksurv/meta/stacking.py,sha256=md3ZKYYlS23YKbbLjWZqtPRSJYAHfLzN9RlC5RgzYEQ,12629
42
42
  sksurv/svm/__init__.py,sha256=CSceYEcBPGKRcJZ4R0u7DzwictGln_weLIsbt2i5xeU,339
43
- sksurv/svm/_minlip.cp39-win_amd64.pyd,sha256=jug6DXgJCOh1wnm3veapsArORog8z8uUIJ3E6rr5KRQ,154112
44
- sksurv/svm/_prsvm.cp39-win_amd64.pyd,sha256=DgnoVLTlPRCPVURltwq5KvVx4Jp3yknvCrI8iOEQeRo,151552
45
- sksurv/svm/minlip.py,sha256=9wPgWblOUe_fVx9xKeaSPT0FaZ3rC6T6Z9Aj5oH2S48,22443
43
+ sksurv/svm/_minlip.cp39-win_amd64.pyd,sha256=h-Cjf1Q_Sg1Y6FYa_Z0uUU1usZ1VrlxEJQoFIvfPlIE,155136
44
+ sksurv/svm/_prsvm.cp39-win_amd64.pyd,sha256=F97QXz0njJ2Bvzeu1EaEEK_HxhTIolIKq2xgunLP6cA,153088
45
+ sksurv/svm/minlip.py,sha256=Elej96P4s6jMNCbGIbNm4ehWI3ew9o2IyF5tfZuTEqg,22416
46
46
  sksurv/svm/naive_survival_svm.py,sha256=D6l8ctlpyUPBhcMlF_6KJq9d_tq1Xmtb9w--n8pGcfM,8209
47
- sksurv/svm/survival_svm.py,sha256=LeZWBZ8kCcbiQwgDVLp34wOcGkBMJHgliTDgsfF6Wts,44793
48
- sksurv/tree/__init__.py,sha256=XkegoaxZZQK3QFhME1RarbR7tFIEO-qSYsiPCveHszg,46
49
- sksurv/tree/_criterion.cp39-win_amd64.pyd,sha256=DtFY3h7n1mXbSCSTxbAP2a-OA2COo7FSwbOJg2jHP5o,172032
50
- sksurv/tree/tree.py,sha256=j6GkRDshPXPv95zQVCVN1cZKJ8A_xHkIWqFfnXthTvc,26000
51
- scikit_survival-0.22.2.dist-info/COPYING,sha256=Czg9WmPaZE9ijZnDOXbqZIftiaqlnwsyV5kt6sEXHms,35821
52
- scikit_survival-0.22.2.dist-info/METADATA,sha256=H6USeZIakYzD3UDSN1Cs1_gNkrG7afVJRnM-YGgNv4k,49964
53
- scikit_survival-0.22.2.dist-info/WHEEL,sha256=GZFS91_ufm4WrNPBaFVPB9MvOXR6bMZQhPcZRRTN5YM,100
54
- scikit_survival-0.22.2.dist-info/top_level.txt,sha256=fPkcFA-XQGbwnD_ZXOvaOWmSd34Qezr26Mn99nYPvAg,7
55
- scikit_survival-0.22.2.dist-info/RECORD,,
47
+ sksurv/svm/survival_svm.py,sha256=oGac8mWlDOlZPRoK1MmbcigKUq2bWPw1Uc8vYSsSlwI,44730
48
+ sksurv/tree/__init__.py,sha256=ozb0fhURX-lpiSiHZd0DMnjkqhC0XOC2CTZq0hEZLPw,65
49
+ sksurv/tree/_criterion.cp39-win_amd64.pyd,sha256=oWNiyb9ApRWoIBvOaXGl2E5f-zHQDwAhoqMdTPaVLDM,173056
50
+ sksurv/tree/tree.py,sha256=PPkqq8jDeAHCd9L283-SLCk7lTBfH-HObTOuOXOvqHs,27248
51
+ scikit_survival-0.23.1.dist-info/COPYING,sha256=Czg9WmPaZE9ijZnDOXbqZIftiaqlnwsyV5kt6sEXHms,35821
52
+ scikit_survival-0.23.1.dist-info/METADATA,sha256=alYA45glhQaH9X_MzelejmubVqXGWVaPiiMPqRa6Yns,49841
53
+ scikit_survival-0.23.1.dist-info/WHEEL,sha256=zq3MnTB53_Huh0eFGROKhLNn5cmUbG6gUFCG6-LWXTY,99
54
+ scikit_survival-0.23.1.dist-info/top_level.txt,sha256=fPkcFA-XQGbwnD_ZXOvaOWmSd34Qezr26Mn99nYPvAg,7
55
+ scikit_survival-0.23.1.dist-info/RECORD,,
@@ -1,5 +1,5 @@
1
1
  Wheel-Version: 1.0
2
- Generator: bdist_wheel (0.42.0)
2
+ Generator: setuptools (75.3.0)
3
3
  Root-Is-Purelib: false
4
4
  Tag: cp39-cp39-win_amd64
5
5
 
sksurv/base.py CHANGED
@@ -98,3 +98,6 @@ class SurvivalAnalysisMixin:
98
98
 
99
99
  result = concordance_index_censored(y[name_event], y[name_time], risk_score)
100
100
  return result[0]
101
+
102
+ def _more_tags(self):
103
+ return {"requires_y": True}
sksurv/column.py CHANGED
@@ -64,18 +64,8 @@ def standardize(table, with_std=True):
64
64
  Table with numeric columns normalized.
65
65
  Categorical columns in the input table remain unchanged.
66
66
  """
67
- if isinstance(table, pd.DataFrame):
68
- cat_columns = table.select_dtypes(include=["category"]).columns
69
- else:
70
- cat_columns = []
71
-
72
67
  new_frame = _apply_along_column(table, standardize_column, with_std=with_std)
73
68
 
74
- # work around for apply converting category dtype to object
75
- # https://github.com/pydata/pandas/issues/9573
76
- for col in cat_columns:
77
- new_frame[col] = table[col].copy()
78
-
79
69
  return new_frame
80
70
 
81
71
 
@@ -199,7 +189,7 @@ def categorical_to_numeric(table):
199
189
  except ValueError:
200
190
  classes = column.dropna().unique()
201
191
  classes.sort(kind="mergesort")
202
- nc = column.replace(classes, np.arange(classes.shape[0], dtype=np.int64))
192
+ nc = column.map(dict(zip(classes, range(classes.shape[0]))))
203
193
  return nc
204
194
  if column.dtype == bool:
205
195
  return column.astype(np.int64)
sksurv/datasets/base.py CHANGED
@@ -1,4 +1,3 @@
1
- import sys
2
1
  import warnings
3
2
 
4
3
  import numpy as np
@@ -22,10 +21,8 @@ __all__ = [
22
21
 
23
22
 
24
23
  def _get_data_path(name):
25
- if sys.version_info >= (3, 9):
26
- from importlib.resources import files
27
- else:
28
- from importlib_resources import files
24
+ from importlib.resources import files
25
+
29
26
  return files(__package__) / "data" / name
30
27
 
31
28