Skip to content

Commit

Permalink
correct typo
Browse files Browse the repository at this point in the history
  • Loading branch information
CamDavidsonPilon committed Nov 17, 2019
1 parent 97fa73c commit b55913a
Show file tree
Hide file tree
Showing 15 changed files with 58 additions and 57 deletions.
1 change: 1 addition & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -13,6 +13,7 @@
##### API Changes

- To align values across models, the column names for the confidence intervals in parametric univariate models `summary` have changed.
- Fixed typo in `ParametricUnivariateFitter` name.


#### 0.22.10 - 2019-11-08
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -196,7 +196,7 @@
"\n",
"where $c$ is the (unknown) horizontal asymptote, and $\\theta$ is a vector of (unknown) parameters for the CDF, $F$. \n",
"\n",
"We can create a custom cumulative hazard model using `ParametericUnivariateFitter` (for a tutorial on how to create custom models, see [this here](Piecewise Exponential Models and Creating Custom Models.ipynb)). Let's choose the Normal CDF for our model. \n",
"We can create a custom cumulative hazard model using `ParametricUnivariateFitter` (for a tutorial on how to create custom models, see [this here](Piecewise Exponential Models and Creating Custom Models.ipynb)). Let's choose the Normal CDF for our model. \n",
"\n",
"Remember we **must** use the imports from `autograd` for this, i.e. `from autograd.scipy.stats import norm`."
]
Expand All @@ -208,10 +208,10 @@
"outputs": [],
"source": [
"from autograd.scipy.stats import norm\n",
"from lifelines.fitters import ParametericUnivariateFitter\n",
"from lifelines.fitters import ParametricUnivariateFitter\n",
"\n",
"\n",
"class UpperAsymptoteFitter(ParametericUnivariateFitter):\n",
"class UpperAsymptoteFitter(ParametricUnivariateFitter):\n",
"\n",
" _fitted_parameter_names = [\"c_\", \"mu_\", \"sigma_\"]\n",
"\n",
Expand Down Expand Up @@ -489,9 +489,9 @@
"outputs": [],
"source": [
"from autograd.scipy.stats import norm\n",
"from lifelines.fitters import ParametericUnivariateFitter\n",
"from lifelines.fitters import ParametricUnivariateFitter\n",
"\n",
"class SimpleUpperAsymptoteFitter(ParametericUnivariateFitter):\n",
"class SimpleUpperAsymptoteFitter(ParametricUnivariateFitter):\n",
"\n",
" _fitted_parameter_names = [\"c_\", \"lambda_\"]\n",
"\n",
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -242,7 +242,7 @@
"I mentioned that the `PiecewiseExponentialFitter` was implemented using only its cumulative hazard function. This is not a lie. _lifelines_ has very general semantics for univariate fitters. For example, this is how the entire `ExponentialFitter` is implemented:\n",
"\n",
"```python\n",
"class ExponentialFitter(ParametericUnivariateFitter):\n",
"class ExponentialFitter(ParametricUnivariateFitter):\n",
"\n",
" _fitted_parameter_names = [\"lambda_\"]\n",
"\n",
Expand Down Expand Up @@ -272,11 +272,11 @@
"metadata": {},
"outputs": [],
"source": [
"from lifelines.fitters import ParametericUnivariateFitter\n",
"from lifelines.fitters import ParametricUnivariateFitter\n",
"\n",
"import autograd.numpy as np\n",
"\n",
"class InverseTimeHazardFitter(ParametericUnivariateFitter):\n",
"class InverseTimeHazardFitter(ParametricUnivariateFitter):\n",
" \n",
" # we tell the model what we want the names of the unknown parameters to be\n",
" _fitted_parameter_names = ['alpha_']\n",
Expand Down Expand Up @@ -368,7 +368,7 @@
"metadata": {},
"outputs": [],
"source": [
"class TwoParamInverseTimeHazardFitter(ParametericUnivariateFitter):\n",
"class TwoParamInverseTimeHazardFitter(ParametricUnivariateFitter):\n",
" \n",
" _fitted_parameter_names = ['alpha_', 'beta_']\n",
" \n",
Expand Down Expand Up @@ -458,9 +458,9 @@
"metadata": {},
"outputs": [],
"source": [
"from lifelines.fitters import ParametericUnivariateFitter\n",
"from lifelines.fitters import ParametricUnivariateFitter\n",
"\n",
"class ThreeParamInverseTimeHazardFitter(ParametericUnivariateFitter):\n",
"class ThreeParamInverseTimeHazardFitter(ParametricUnivariateFitter):\n",
" \n",
" _fitted_parameter_names = ['alpha_', 'beta_', 'gamma_']\n",
" _bounds = [(0, None), (75.0001, None), (0, None)]\n",
Expand Down Expand Up @@ -615,7 +615,7 @@
"# I'm shifting this to exaggerate the effect \n",
"T = T + 10\n",
"\n",
"class ThreeParameterWeibullFitter(ParametericUnivariateFitter):\n",
"class ThreeParameterWeibullFitter(ParametricUnivariateFitter):\n",
"\n",
" _fitted_parameter_names = [\"lambda_\", \"rho_\", \"theta_\"]\n",
" _bounds = [(0, None), (0, None), (0, T.min()-0.001)]\n",
Expand Down Expand Up @@ -690,7 +690,7 @@
"from autograd.scipy.stats import norm\n",
"\n",
"\n",
"class InverseGaussianFitter(ParametericUnivariateFitter):\n",
"class InverseGaussianFitter(ParametricUnivariateFitter):\n",
" _fitted_parameter_names = ['lambda_', 'mu_']\n",
" \n",
" def _cumulative_density(self, params, times):\n",
Expand Down Expand Up @@ -791,7 +791,7 @@
"source": [
"from autograd_gamma import betainc, betaincln\n",
"\n",
"class BetaFitter(ParametericUnivariateFitter):\n",
"class BetaFitter(ParametricUnivariateFitter):\n",
" _fitted_parameter_names = ['alpha_', 'beta_', \"m_\"]\n",
" _bounds = [(0, None), (0, None), (T.max(), None)]\n",
" _scipy_fit_method = \"SLSQP\"\n",
Expand Down Expand Up @@ -876,7 +876,7 @@
"metadata": {},
"outputs": [],
"source": [
"class GompertzFitter(ParametericUnivariateFitter):\n",
"class GompertzFitter(ParametricUnivariateFitter):\n",
" # this parameterization is slightly different than wikipedia. \n",
" _fitted_parameter_names = ['nu_', 'b_']\n",
"\n",
Expand Down
4 changes: 2 additions & 2 deletions examples/Mixture of Exponentials and Binning.ipynb
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@
"outputs": [],
"source": [
"from numpy.random import exponential\n",
"from lifelines.fitters import ParametericUnivariateFitter\n",
"from lifelines.fitters import ParametricUnivariateFitter\n",
"import autograd.numpy as np\n",
"np.random.seed(10)"
]
Expand Down Expand Up @@ -123,7 +123,7 @@
],
"source": [
"\n",
"class MixtureExponential(ParametericUnivariateFitter):\n",
"class MixtureExponential(ParametricUnivariateFitter):\n",
"\n",
" _fitted_parameter_names = ['lambda1', 'lambda2', 'p']\n",
" _bounds = [(0, mean_obs), (mean_obs, None), (0, 1)]\n",
Expand Down
14 changes: 7 additions & 7 deletions examples/Modelling time-lagged conversion rates.ipynb
Original file line number Diff line number Diff line change
Expand Up @@ -196,7 +196,7 @@
"\n",
"where $c$ is the (unknown) horizontal asymptote, and $\\theta$ is a vector of (unknown) parameters for the CDF, $F$. \n",
"\n",
"We can create a custom cumulative hazard model using `ParametericUnivariateFitter` (for a tutorial on how to create custom models, see [this here](Piecewise Exponential Models and Creating Custom Models.ipynb)). Let's choose the Normal CDF for our model. \n",
"We can create a custom cumulative hazard model using `ParametricUnivariateFitter` (for a tutorial on how to create custom models, see [this here](Piecewise Exponential Models and Creating Custom Models.ipynb)). Let's choose the Normal CDF for our model. \n",
"\n",
"Remember we **must** use the imports from `autograd` for this, i.e. `from autograd.scipy.stats import norm`."
]
Expand All @@ -208,10 +208,10 @@
"outputs": [],
"source": [
"from autograd.scipy.stats import norm\n",
"from lifelines.fitters import ParametericUnivariateFitter\n",
"from lifelines.fitters import ParametricUnivariateFitter\n",
"\n",
"\n",
"class UpperAsymptoteFitter(ParametericUnivariateFitter):\n",
"class UpperAsymptoteFitter(ParametricUnivariateFitter):\n",
"\n",
" _fitted_parameter_names = [\"c_\", \"mu_\", \"sigma_\"]\n",
"\n",
Expand Down Expand Up @@ -489,9 +489,9 @@
"outputs": [],
"source": [
"from autograd.scipy.stats import norm\n",
"from lifelines.fitters import ParametericUnivariateFitter\n",
"from lifelines.fitters import ParametricUnivariateFitter\n",
"\n",
"class SimpleUpperAsymptoteFitter(ParametericUnivariateFitter):\n",
"class SimpleUpperAsymptoteFitter(ParametricUnivariateFitter):\n",
"\n",
" _fitted_parameter_names = [\"c_\", \"lambda_\"]\n",
"\n",
Expand Down Expand Up @@ -586,9 +586,9 @@
"outputs": [],
"source": [
"from autograd import numpy as np\n",
"from lifelines.fitters import ParametericUnivariateFitter\n",
"from lifelines.fitters import ParametricUnivariateFitter\n",
"\n",
"class CureFitter(ParametericUnivariateFitter):\n",
"class CureFitter(ParametricUnivariateFitter):\n",
"\n",
" _fitted_parameter_names = [\"p_\", \"lambda_\", \"rho_\"]\n",
"\n",
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -242,7 +242,7 @@
"I mentioned that the `PiecewiseExponentialFitter` was implemented using only its cumulative hazard function. This is not a lie. _lifelines_ has very general semantics for univariate fitters. For example, this is how the entire `ExponentialFitter` is implemented:\n",
"\n",
"```python\n",
"class ExponentialFitter(ParametericUnivariateFitter):\n",
"class ExponentialFitter(ParametricUnivariateFitter):\n",
"\n",
" _fitted_parameter_names = [\"lambda_\"]\n",
"\n",
Expand Down Expand Up @@ -272,11 +272,11 @@
"metadata": {},
"outputs": [],
"source": [
"from lifelines.fitters import ParametericUnivariateFitter\n",
"from lifelines.fitters import ParametricUnivariateFitter\n",
"\n",
"import autograd.numpy as np\n",
"\n",
"class InverseTimeHazardFitter(ParametericUnivariateFitter):\n",
"class InverseTimeHazardFitter(ParametricUnivariateFitter):\n",
" \n",
" # we tell the model what we want the names of the unknown parameters to be\n",
" _fitted_parameter_names = ['alpha_']\n",
Expand Down Expand Up @@ -368,7 +368,7 @@
"metadata": {},
"outputs": [],
"source": [
"class TwoParamInverseTimeHazardFitter(ParametericUnivariateFitter):\n",
"class TwoParamInverseTimeHazardFitter(ParametricUnivariateFitter):\n",
" \n",
" _fitted_parameter_names = ['alpha_', 'beta_']\n",
" \n",
Expand Down Expand Up @@ -458,9 +458,9 @@
"metadata": {},
"outputs": [],
"source": [
"from lifelines.fitters import ParametericUnivariateFitter\n",
"from lifelines.fitters import ParametricUnivariateFitter\n",
"\n",
"class ThreeParamInverseTimeHazardFitter(ParametericUnivariateFitter):\n",
"class ThreeParamInverseTimeHazardFitter(ParametricUnivariateFitter):\n",
" \n",
" _fitted_parameter_names = ['alpha_', 'beta_', 'gamma_']\n",
" _bounds = [(0, None), (75.0001, None), (0, None)]\n",
Expand Down Expand Up @@ -615,7 +615,7 @@
"# I'm shifting this to exaggerate the effect \n",
"T = T + 10\n",
"\n",
"class ThreeParameterWeibullFitter(ParametericUnivariateFitter):\n",
"class ThreeParameterWeibullFitter(ParametricUnivariateFitter):\n",
"\n",
" _fitted_parameter_names = [\"lambda_\", \"rho_\", \"theta_\"]\n",
" _bounds = [(0, None), (0, None), (0, T.min()-0.001)]\n",
Expand Down Expand Up @@ -690,7 +690,7 @@
"from autograd.scipy.stats import norm\n",
"\n",
"\n",
"class InverseGaussianFitter(ParametericUnivariateFitter):\n",
"class InverseGaussianFitter(ParametricUnivariateFitter):\n",
" _fitted_parameter_names = ['lambda_', 'mu_']\n",
" \n",
" def _cumulative_density(self, params, times):\n",
Expand Down Expand Up @@ -791,7 +791,7 @@
"source": [
"from autograd_gamma import betainc\n",
"\n",
"class BetaFitter(ParametericUnivariateFitter):\n",
"class BetaFitter(ParametricUnivariateFitter):\n",
" _fitted_parameter_names = ['alpha_', 'beta_', \"m_\"]\n",
" _bounds = [(0, None), (0, None), (T.max(), None)]\n",
" \n",
Expand Down Expand Up @@ -875,7 +875,7 @@
"metadata": {},
"outputs": [],
"source": [
"class GompertzFitter(ParametericUnivariateFitter):\n",
"class GompertzFitter(ParametricUnivariateFitter):\n",
" # this parameterization is slightly different than wikipedia. \n",
" _fitted_parameter_names = ['nu_', 'b_']\n",
"\n",
Expand Down
8 changes: 4 additions & 4 deletions lifelines/fitters/__init__.py
Original file line number Diff line number Diff line change
Expand Up @@ -294,7 +294,7 @@ def percentile(self, p: float):
return utils.qth_survival_times(p, self.survival_function_)


class ParametericUnivariateFitter(UnivariateFitter):
class ParametricUnivariateFitter(UnivariateFitter):
"""
Without overriding anything, assumes all parameters must be greater than 0.
"""
Expand All @@ -305,7 +305,7 @@ class ParametericUnivariateFitter(UnivariateFitter):
_scipy_fit_options: Dict[str, Any] = dict()

def __init__(self, *args, **kwargs):
super(ParametericUnivariateFitter, self).__init__(*args, **kwargs)
super(ParametricUnivariateFitter, self).__init__(*args, **kwargs)
self._estimate_name = "cumulative_hazard_"
if not hasattr(self, "_bounds"):
self._bounds = [(0.0, None)] * len(self._fitted_parameter_names)
Expand Down Expand Up @@ -1165,7 +1165,7 @@ def _conditional_time_to_event_(self):
)


class KnownModelParametericUnivariateFitter(ParametericUnivariateFitter):
class KnownModelParametricUnivariateFitter(ParametricUnivariateFitter):

_KNOWN_MODEL = True

Expand Down Expand Up @@ -2984,7 +2984,7 @@ def print(self):
from IPython.core.getipython import get_ipython

ip = get_ipython()
if ip.has_trait("kernel"):
if ip and ip.has_trait("kernel"):
self.html_print()
else:
self.console_print()
Expand Down
4 changes: 2 additions & 2 deletions lifelines/fitters/exponential_fitter.py
Original file line number Diff line number Diff line change
@@ -1,9 +1,9 @@
# -*- coding: utf-8 -*-
import numpy as np
from lifelines.fitters import KnownModelParametericUnivariateFitter
from lifelines.fitters import KnownModelParametricUnivariateFitter


class ExponentialFitter(KnownModelParametericUnivariateFitter):
class ExponentialFitter(KnownModelParametricUnivariateFitter):
r"""
This class implements an Exponential model for univariate data. The model has parameterized
form:
Expand Down
4 changes: 2 additions & 2 deletions lifelines/fitters/generalized_gamma_fitter.py
Original file line number Diff line number Diff line change
Expand Up @@ -3,12 +3,12 @@
from autograd.numpy import exp, log
from scipy.special import gammainccinv, gammaincinv
from autograd_gamma import gammaincc, gammainc, gammaln, gammainccln, gammaincln
from lifelines.fitters import KnownModelParametericUnivariateFitter
from lifelines.fitters import KnownModelParametricUnivariateFitter
from lifelines.utils import CensoringType
from lifelines.utils.safe_exp import safe_exp


class GeneralizedGammaFitter(KnownModelParametericUnivariateFitter):
class GeneralizedGammaFitter(KnownModelParametricUnivariateFitter):
r"""
This class implements a Generalized Gamma model for univariate data. The model has parameterized
Expand Down
4 changes: 2 additions & 2 deletions lifelines/fitters/log_logistic_fitter.py
Original file line number Diff line number Diff line change
@@ -1,11 +1,11 @@
# -*- coding: utf-8 -*-
import autograd.numpy as np

from lifelines.fitters import KnownModelParametericUnivariateFitter
from lifelines.fitters import KnownModelParametricUnivariateFitter
from lifelines.utils import CensoringType


class LogLogisticFitter(KnownModelParametericUnivariateFitter):
class LogLogisticFitter(KnownModelParametricUnivariateFitter):

r"""
This class implements a Log-Logistic model for univariate data. The model has parameterized
Expand Down
4 changes: 2 additions & 2 deletions lifelines/fitters/log_normal_fitter.py
Original file line number Diff line number Diff line change
Expand Up @@ -3,11 +3,11 @@
from scipy.special import erfinv
import autograd.numpy as np
from autograd.scipy.stats import norm
from lifelines.fitters import KnownModelParametericUnivariateFitter
from lifelines.fitters import KnownModelParametricUnivariateFitter
from lifelines.utils import CensoringType


class LogNormalFitter(KnownModelParametericUnivariateFitter):
class LogNormalFitter(KnownModelParametricUnivariateFitter):
r"""
This class implements an Log Normal model for univariate data. The model has parameterized
form:
Expand Down
4 changes: 2 additions & 2 deletions lifelines/fitters/piecewise_exponential_fitter.py
Original file line number Diff line number Diff line change
@@ -1,9 +1,9 @@
# -*- coding: utf-8 -*-
import autograd.numpy as np
from lifelines.fitters import KnownModelParametericUnivariateFitter
from lifelines.fitters import KnownModelParametricUnivariateFitter


class PiecewiseExponentialFitter(KnownModelParametericUnivariateFitter):
class PiecewiseExponentialFitter(KnownModelParametricUnivariateFitter):
r"""
This class implements an Piecewise Exponential model for univariate data. The model has parameterized
hazard rate:
Expand Down
4 changes: 2 additions & 2 deletions lifelines/fitters/weibull_fitter.py
Original file line number Diff line number Diff line change
@@ -1,11 +1,11 @@
# -*- coding: utf-8 -*-
import autograd.numpy as np
from lifelines.fitters import KnownModelParametericUnivariateFitter
from lifelines.fitters import KnownModelParametricUnivariateFitter
from lifelines.utils.safe_exp import safe_exp
from lifelines import utils


class WeibullFitter(KnownModelParametericUnivariateFitter):
class WeibullFitter(KnownModelParametricUnivariateFitter):

r"""
Expand Down
4 changes: 2 additions & 2 deletions lifelines/plotting.py
Original file line number Diff line number Diff line change
Expand Up @@ -15,9 +15,9 @@ def get_distribution_name_of_lifelines_model(model):


def create_scipy_stats_model_from_lifelines_model(model):
from lifelines.fitters import KnownModelParametericUnivariateFitter
from lifelines.fitters import KnownModelParametricUnivariateFitter

is_univariate_model = isinstance(model, KnownModelParametericUnivariateFitter)
is_univariate_model = isinstance(model, KnownModelParametricUnivariateFitter)
dist = get_distribution_name_of_lifelines_model(model)

if not (is_univariate_model):
Expand Down

0 comments on commit b55913a

Please sign in to comment.