From 0ec1c0fce6514d066ed71c35d73f4ab323a50ece Mon Sep 17 00:00:00 2001 From: Cameron Davidson-Pilon Date: Fri, 23 Nov 2018 10:15:02 -0500 Subject: [PATCH] bump to 0.15.1 --- CHANGELOG.md | 4 ++++ docs/Examples.rst | 2 +- docs/conf.py | 4 ++-- docs/images/invert_y_axis.png | Bin 30719 -> 80168 bytes lifelines/fitters/cox_time_varying_fitter.py | 8 +++++++ lifelines/fitters/coxph_fitter.py | 2 +- lifelines/version.py | 2 +- setup.py | 16 +++++-------- tests/test_estimation.py | 24 +++++++++++++++++++ tests/test_plotting.py | 2 ++ 10 files changed, 49 insertions(+), 15 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 8a19f4243..f8108f2a2 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,9 @@ ### Changelogs +#### 0.15.1 + - Bug fixes for v0.15.0 + - Raise NotImplementedError if the `robust` flag is used in `CoxTimeVaryingFitter` - that's not ready yet. + #### 0.15.0 - adding `robust` params to `CoxPHFitter`'s `fit`. This enables atleast i) using non-integer weights in the model (these could be sampling weights like IPTW), and ii) mis-specified models (ex: non-proportional hazards). Under the hood it's a sandwich estimator. This does not handle ties, so if there are high number of ties, results may significantly differ from other software. - `standard_errors_` is now a property on fitted `CoxPHFitter` which describes the standard errors of the coefficients. diff --git a/docs/Examples.rst b/docs/Examples.rst index 2036456f0..d7835175f 100644 --- a/docs/Examples.rst +++ b/docs/Examples.rst @@ -634,7 +634,7 @@ The fitting should be faster, and the results identical to the unweighted datase The second use of weights is sampling weights. These are typically positive, non-integer weights that represent some artifical under/over sampling of observations (ex: inverse probability of treatment weights). It is recommened to set ``robust=True`` in the call to the ``fit`` as the usual standard error is incorrect for sampling weights. The ``robust`` flag will use the sandwich estimator for the standard error. -.. warning:: The implementation of the sandwich estimator does not handle ties correctly (under the Efron handling of ties), and will give slightly or significantly different results from other software depending on the frequeny of ties. g +.. warning:: The implementation of the sandwich estimator does not handle ties correctly (under the Efron handling of ties), and will give slightly or significantly different results from other software depending on the frequeny of ties. Correlations between subjects in a Cox model diff --git a/docs/conf.py b/docs/conf.py index 13885f8f8..78c328d83 100644 --- a/docs/conf.py +++ b/docs/conf.py @@ -55,9 +55,9 @@ # built documents. # # The short X.Y version. -version = '0.15.0' +version = '0.15.1' # The full version, including alpha/beta/rc tags. -release = '0.15.0' +release = '0.15.1' # The language for content autogenerated by Sphinx. Refer to documentation # for a list of supported languages. diff --git a/docs/images/invert_y_axis.png b/docs/images/invert_y_axis.png index 86ff80593cccd4b238c98133cb507def10dc6f09..2ea5ac7a3307b2095a796f972b1eb8e2fd972e25 100644 GIT binary patch literal 80168 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 G%KrmDj@qpN diff --git a/lifelines/fitters/cox_time_varying_fitter.py b/lifelines/fitters/cox_time_varying_fitter.py index 4d4d313f8..e6ac14602 100644 --- a/lifelines/fitters/cox_time_varying_fitter.py +++ b/lifelines/fitters/cox_time_varying_fitter.py @@ -38,6 +38,11 @@ class CoxTimeVaryingFitter(BaseFitter): """ def __init__(self, alpha=0.95, penalizer=0.0): + if not (0 < alpha <= 1.): + raise ValueError('alpha parameter must be between 0 and 1.') + if penalizer < 0: + raise ValueError("penalizer parameter must be >= 0.") + self.alpha = alpha self.penalizer = penalizer @@ -72,6 +77,9 @@ def fit(self, df, id_col, event_col, start_col='start', stop_col='stop', weights """ self.robust = robust + if self.robust: + raise NotImplementedError("Not available yet.") + self.event_col = event_col self._time_fit_was_called = datetime.utcnow().strftime("%Y-%m-%d %H:%M:%S") diff --git a/lifelines/fitters/coxph_fitter.py b/lifelines/fitters/coxph_fitter.py index 8fb01c45a..0ec9e6d62 100644 --- a/lifelines/fitters/coxph_fitter.py +++ b/lifelines/fitters/coxph_fitter.py @@ -681,7 +681,7 @@ def predict_log_partial_hazard(self, X): pass_for_numeric_dtypes_or_raise(X) elif isinstance(X, pd.Series): assert len(hazard_names) == 1, 'Series not the correct arugment' - X = pd.DataFrame(series).T + X = pd.DataFrame(X) pass_for_numeric_dtypes_or_raise(X) X = X.astype(float) diff --git a/lifelines/version.py b/lifelines/version.py index c9e657457..2a31e4772 100644 --- a/lifelines/version.py +++ b/lifelines/version.py @@ -1,3 +1,3 @@ from __future__ import unicode_literals -__version__ = '0.15.0' +__version__ = '0.15.1' diff --git a/setup.py b/setup.py index e09d12f26..c6b1cac29 100644 --- a/setup.py +++ b/setup.py @@ -9,14 +9,8 @@ def filepath(fname): exec(compile(open('lifelines/version.py').read(), 'lifelines/version.py', 'exec')) -readme_md = filepath('README.md') - -try: - import pypandoc - readme_rst = pypandoc.convert_file(readme_md, 'rst') -except(ImportError): - readme_rst = open(readme_md).read() - +with open('README.md') as f: + long_description = f.read() setup( name="lifelines", @@ -32,7 +26,8 @@ def filepath(fname): 'lifelines.fitters', 'lifelines.utils', ], - long_description=readme_rst, + long_description=long_description, + long_description_content_type='text/markdown', classifiers=[ "Development Status :: 4 - Beta", "License :: OSI Approved :: MIT License", @@ -45,8 +40,9 @@ def filepath(fname): ], install_requires=[ "numpy", - "scipy", + "scipy>=1.0", "pandas>=0.18", + "matplotlib>=2.0", ], package_data={ "lifelines": [ diff --git a/tests/test_estimation.py b/tests/test_estimation.py index 877934cd8..82b7608a8 100644 --- a/tests/test_estimation.py +++ b/tests/test_estimation.py @@ -1010,6 +1010,14 @@ def test_cox_ph_prediction_with_series(self, rossi): result = cf.predict_survival_function(rossi_mean) assert_series_equal(cf.baseline_survival_['baseline survival'], result[0], check_names=False) + def test_cox_ph_prediction_with_series_of_longer_length(self, rossi): + rossi = rossi[['week', 'arrest', 'age']] + cf = CoxPHFitter() + cf.fit(rossi, duration_col='week', event_col='arrest') + + X = pd.Series([1,2,3,4,5]) + result = cf.predict_survival_function(X) + @pytest.mark.xfail def test_cox_ph_prediction_monotonicity(self, data_pred2): # Concordance wise, all prediction methods should be monotonic versions @@ -1741,6 +1749,13 @@ def test_baseline_survival_is_the_same_indp_of_scale(self, regression_dataset): cp2.fit(df_descaled, event_col='E', duration_col='T') assert_frame_equal(cp2.baseline_survival_, cp1.baseline_survival_) + def test_error_thrown_weights_are_nonpositive(self, regression_dataset): + regression_dataset['weights'] = -1 + cph = CoxPHFitter() + with pytest.raises(ValueError): + cph.fit(regression_dataset, event_col='E', duration_col='T', weights_col='weights') + + def test_survival_prediction_is_the_same_indp_of_scale(self, regression_dataset): df = regression_dataset.copy() @@ -2385,6 +2400,15 @@ def test_likelihood_ratio_test_against_R(self, ctv, heart): assert abs(p_value - 0.00448) < 0.001 assert deg_of_freedom == 4 + def test_error_thrown_weights_are_nonpositive(self, ctv, heart): + heart['weights'] = -1 + with pytest.raises(ValueError): + ctv.fit(heart, id_col='id', event_col='event', weights_col='weights') + + + def test_error_thrown_if_column_doesnt_exist(self, ctv, heart): + with pytest.raises(KeyError): + ctv.fit(heart, id_col='_id_', event_col='event') def test_print_summary(self, ctv, heart): diff --git a/tests/test_plotting.py b/tests/test_plotting.py index 947ad3811..67245f36d 100644 --- a/tests/test_plotting.py +++ b/tests/test_plotting.py @@ -92,6 +92,7 @@ def test_aalen_additive_plot(self, block): timeline = np.linspace(0, 70, 10000) hz, coef, X = generate_hazard_rates(n, d, timeline) T = generate_random_lifetimes(hz, timeline) + T[np.isinf(T)] = 10 C = np.random.binomial(1, 1., size=n) X['T'] = T X['E'] = C @@ -336,6 +337,7 @@ def test_aalen_additive_fit_with_censor(self, block): cumulative_hazards = pd.DataFrame(cumulative_integral(coef.values, timeline), index=timeline, columns=coef.columns) T = generate_random_lifetimes(hz, timeline) + T[np.isinf(T)] = 10 X['T'] = T X['E'] = np.random.binomial(1, 0.99, n)