class_docstr: This class fits the regression model:
  
  .. math::  h(t|x)  = b_0(t) + b_1(t) x_1 + ... + b_N(t) x_N
  
  that is, the hazard rate is a linear function of the covariates with time-varying coefficients.
  This implementation assumes non-time-varying covariates, see ``TODO: name``
  
  Note
  -----
  
  This class was rewritten in lifelines 0.17.0 to focus solely on static datasets.
  There is no guarantee of backwards compatibility.
  
  Parameters
  -----------
  fit_intercept: bool, optional (default: True)
    If False, do not attach an intercept (column of ones) to the covariate matrix. The
    intercept, :math:`b_0(t)` acts as a baseline hazard.
  alpha: float, optional (default=0.05)
    the level in the confidence intervals.
  coef_penalizer: float, optional (default: 0)
    Attach a L2 penalizer to the size of the coefficients during regression. This improves
    stability of the estimates and controls for high correlation between covariates.
    For example, this shrinks the magnitude of :math:`c_{i,t}`.
  smoothing_penalizer: float, optional (default: 0)
    Attach a L2 penalizer to difference between adjacent (over time) coefficients. For
    example, this shrinks the magnitude of :math:`c_{i,t} - c_{i,t+1}`.
  
  Attributes
  ----------
  cumulative_hazards_ : DataFrame
      The estimated cumulative hazard
  hazards_ : DataFrame
      The estimated hazards
  confidence_intervals_ : DataFrame
      The lower and upper confidence intervals for the cumulative hazard
  durations: array
      The durations provided
  event_observed: array
      The event_observed variable provided
  weights: array
      The event_observed variable provided
class_docstr_tok: ["This","class","fits","the","regression","model",":","..","math",":",":","h","(","t|x",")","=","b_0","(","t",")","+","b_1","(","t",")","x_1","+","...","+","b_N","(","t",")","x_N","that","is",",","the","hazard","rate","is","a","linear","function","of","the","covariates","with","time-varying","coefficients",".","This","implementation","assumes","non-time-varying","covariates",",","see","``","TODO",":","name","``","Note","--","--","-","This","class","was","rewritten","in","lifelines","0.17.0","to","focus","solely","on","static","datasets",".","There","is","no","guarantee","of","backwards","compatibility",".","Parameters","--","--","--","--","--","-","fit_intercept",":","bool",",","optional","(","default",":","True",")","If","False",",","do","not","attach","an","intercept","(","column","of","ones",")","to","the","covariate","matrix",".","The","intercept",",",":","math",":","`","b_0","(","t",")","`","acts","as","a","baseline","hazard",".","alpha",":","float",",","optional","(","default=0.05",")","the","level","in","the","confidence","intervals",".","coef_penalizer",":","float",",","optional","(","default",":","0",")","Attach","a","L2","penalizer","to","the","size","of","the","coefficients","during","regression",".","This","improves","stability","of","the","estimates","and","controls","for","high","correlation","between","covariates",".","For","example",",","this","shrinks","the","magnitude","of",":","math",":","`","c_","{","i",",","t","}","`",".","smoothing_penalizer",":","float",",","optional","(","default",":","0",")","Attach","a","L2","penalizer","to","difference","between","adjacent","(","over","time",")","coefficients",".","For","example",",","this","shrinks","the","magnitude","of",":","math",":","`","c_","{","i",",","t","}","-","c_","{","i",",","t+1","}","`",".","Attributes","--","--","--","--","--","cumulative_hazards_",":","DataFrame","The","estimated","cumulative","hazard","hazards_",":","DataFrame","The","estimated","hazards","confidence_intervals_",":","DataFrame","The","lower","and","upper","confidence","intervals","for","the","cumulative","hazard","durations",":","array","The","durations","provided","event_observed",":","array","The","event_observed","variable","provided","weights",":","array","The","event_observed","variable","provided"]
docstr: Returns the median lifetimes for the individuals.
  http://stats.stackexchange.com/questions/102986/percentile-loss-functions
  
  Parameters
  ----------
  X: a (n,d) covariate numpy array or DataFrame
      If a DataFrame, columns
      can be in any order. If a numpy array, columns must be in the
      same order as the training data.
  p: float
      default: 0.5
docstr_tok: ["Returns","the","median","lifetimes","for","the","individuals",".","http",":","\/\/stats.stackexchange.com\/questions\/102986\/percentile-loss-functions","Parameters","--","--","--","--","--","X",":","a","(","n",",","d",")","covariate","numpy","array","or","DataFrame","If","a","DataFrame",",","columns","can","be","in","any","order",".","If","a","numpy","array",",","columns","must","be","in","the","same","order","as","the","training","data",".","p",":","float","default",":","0.5"]
code: def predict_percentile(self, X, p=0.5) -> pd.Series:
      """
      Returns the median lifetimes for the individuals.
      http://stats.stackexchange.com/questions/102986/percentile-loss-functions
  
      Parameters
      ----------
      X: a (n,d) covariate numpy array or DataFrame
          If a DataFrame, columns
          can be in any order. If a numpy array, columns must be in the
          same order as the training data.
      p: float
          default: 0.5
  
      """
      index = _get_index(X)
      return qth_survival_times(
          p, self.predict_survival_function(X)[index]
      ).T.squeeze()
  
imports: import warnings
  from datetime import datetime
  import time
  import numpy
  import pandas
  from numpy.linalg import LinAlgError
  from scipy.integrate import trapz
  from lifelines.fitters import RegressionFitter
  from lifelines.utils.printer import Printer
  from lifelines.exceptions import StatisticalWarning, ConvergenceWarning
  from lifelines import utils
  from lifelines.utils import _get_index, inv_normal_cdf, epanechnikov_kernel, ridge_regression, qth_survival_times, check_for_numeric_dtypes_or_raise, concordance_index, check_nans_or_infs, normalize, string_rjustify, _to_list, format_floats, format_p_value, format_exp_floats, survival_table_from_events, CensoringType
label_desc: Use image node_id 9 for calling the AalenAdditiveFitter obj's underlying member method code with example usage: obj.predict_percentile(X, p) and returns: qth_survival_times