更新日志

0.28.0 - 即将发布

  • 修复了使用survival_table_from_events时未来时间过远的bins,参见#1587

  • 移除了sklean_adaptor。这是一个糟糕的临时解决方案,并且带来了比预期更多的混淆和支持负担。这次清理了我们的API并简化了库。✨ 没有替代品,我怀疑我会引入一个 ✨

  • 修复Pandas 2.0的兼容性。

  • 修复NelsonAalenfitter中的溢出问题,#1585

0.27.8 - 2023-09-13

  • 估计器现在具有.label属性

  • 修复了一些弃用警告

  • 固定到 numpy < 2.0

0.27.7 - 2023-05-01

  • check_assumptions(show_plots=True) 将始终显示图表, 无论测试结果如何。感谢 @nomennominatur!

  • lifelines.datasets 现在可以导入了。

0.27.6 - 2023-04-27

  • 修复了py3.7的问题

0.27.5 - 2023-04-27

  • 支持 pandas 2.0+

新功能

  • 支持 py3.11

0.27.4 - 2022-11-16

新功能

  • 支持py3.11

0.27.3 - 2022-09-25

新功能

  • 修复并消除了大量警告

错误修复

  • 迁移到更新的Pandas Styler以使用to_latex

API变更

  • 摘要对象上有太多的函数,所以我隐藏了to_*

0.27.2 - 2022-09-07

错误修复

  • 修复了在存在非常晚的条目时add_at_risk_table中的问题。

0.27.1 - 2022-06-25

新功能

  • 所有的 fit_ 方法现在都接受一个 fit_options 字典,允许用户传递 kwargs 给底层的拟合算法。

API变更

  • step_size 已从 Cox 模型 fit 中移除。请参阅上面的 fit_options

错误修复

  • 当传入“平凡”矩阵时(没有协变量的矩阵),修复了Cox模型

0.27.0 - 2022-03-15

放弃对Python3.6的支持。

错误修复

  • 修复在add_at_risk_counts中的延迟输入。

新功能

  • add_at_risk_counts 有一个新的标志,用于确定使用开始或结束期的风险计数。

  • fitter的summary中的新列,显示参数正在比较的数字。

API变更

  • plot_lifetimesduration参数的解释是“受试者死亡的相对时间(自出生以来)”,而不是旧的“观察时间”。当存在延迟进入时,这些解释是不同的。

0.26.4 - 2021-11-30

新功能

  • 向对数秩函数添加weights

0.26.3 - 2021-09-16

错误修复

  • 修复使用公式与CoxPHFitter.score

0.26.2 - 2021-09-15

v0.26.1 部署中的错误

0.26.1 - 2021-09-15

API变更

  • t_0logrank_test 中现在不会删除数据,而是会对所有之后经历事件的受试者进行审查。

  • 更新status列在lifelines.datasets.load_lung中,使其编码更加标准化:0表示删失,1表示事件。

错误修复

  • 修复使用公式与 AalenAdditiveFitter.predict_cumulative_hazard

  • 修复使用公式与CoxPHFitter.score

0.26.0 - 2021-05-26

新功能

  • .BIC_ 现在存在于拟合模型中。

  • CoxPHFitter 使用样条基线可以接受预先计算的节点位置。

  • 在KaplanMeierFitter中,左截尾拟合现在是“预期的”。也就是说,predict 总是预测生存函数(就像其他所有模型一样),confidence_interval_ 总是生存函数的置信区间(就像其他所有模型一样),等等。总之:估计的API不会因为你的数据集截尾方式而改变。

错误修复

  • 修复了一个烦人的错误,其中at_risk-table标签在数据跨越较大范围时未正确对齐。详情请参见合并的PR。

  • 修复了find_best_parametric_model中的一个错误,该错误导致计算了错误的BIC值。

  • 修复了在Cox模型中使用数组作为惩罚器时的回归错误。

0.25.11 - 2021-04-06

错误修复

  • 修复回归模型预测中的整数值分类变量。

  • 允许使用numpy > 1.20。

  • 修复了Cox模型中弹性网络惩罚项未正确加权的问题。

0.25.10 - 2021-03-03

新功能

  • 在使用单行显示时,外观更好 add_at_risk_table

0.25.9 - 2021-02-04

依赖项的小幅增加。

0.25.8 - 2021-01-22

重要提示:我们放弃了Patsy作为我们的公式框架,转而采用Formulaic。虽然后者不如Patsy成熟,但我们认为其核心功能令人满意,并且它提供了新的机会。

新功能

  • 带有公式的参数化模型现在可以被序列化。

  • 一个 _scipy_callback 函数可用于拟合算法中。

0.25.7 - 2020-12-09

API变更

  • cumulative_hazard_at_times添加到NelsonAalenFitter中

错误修复

  • 修复了当进入时间等于事件时间时CoxPHFitter中的错误。

  • 修复了AFT区间删失回归中的公式。

  • 修复了当没有观察到事件时的concordance_index_

  • 修复了在ParametricUnivariate模型中标签被覆盖的问题

0.25.6 - 2020-10-26

新功能

  • 参数Cox模型现在可以处理左删失和区间删失数据集。

错误修复

  • 通过移除对plt.tight_layout()的调用,“改进”了add_at_risk_counts的输出 - 当你在多个轴上调用add_at_risk_counts时,这种方法效果更好,但建议你在脚本的最后调用plt.tight_layout()

  • 修复KaplanMeierFitter中间隔审查的bug,其中 最大(下限) < 最小(上限)。

0.25.5 - 2020-09-23

API 变更

  • check_assumptions 现在返回一个可以操作的轴列表的列表

错误修复

  • 修复了在AFT模型中使用plot_partial_effects处理分类数据时的错误

  • 当Hessian矩阵包含NaN时,改进了警告。

  • 修复了参数模型中区间删失拟合的性能回归问题

  • weights 在NPMLE中没有被正确应用

0.25.4 - 2020-08-26

新功能

  • 新的Cox模型基线估计器:piecewise

  • 参数模型的性能改进 log_likelihood_ratio_test()print_summary()

  • Cox模型的更好的步长默认值 -> 更稳健的收敛性。

错误修复

  • 修复使用公式时的check_assumptions

0.25.3 - 2020-08-24

新功能

  • survival_difference_at_fixed_point_in_time_test 现在接受 拟合器而不是原始数据,这意味着您可以在 左、右或区间删失数据上使用此函数。

API变更

  • 请参见上面关于survival_difference_at_fixed_point_in_time_test的注释。

错误修复

  • 修复笔记本中的StatisticalResult打印问题

  • 修复调用plot_covariate_groups时的Python错误

  • 修复plot_partial_effects_on_outcome中的数据类型不匹配问题。

0.25.2 - 2020-08-08

新功能

  • Spline CoxPHFitter 现在可以使用 strata

API变更

  • 对样条CoxPHFitter进行了一个小的参数化更改。样条部分中的线性项被移到了beta_中的一个新的Intercept项中。

  • n_baseline_knots 在样条 CoxPHFitter 中现在指的是所有的节点,而不仅仅是内部节点(这对我来说很困惑,作者也是如此)。因此,将 n_baseline_knots 加2以恢复与之前相同的模型。

错误修复

  • 修复当调用predict_hazard时的CoxPHFitter样条。

  • 修复了一些我遗漏的异常导入。

  • 修复样条中的对数似然p值 CoxPHFitter

0.25.1 - 2020-08-01

错误修复

  • 好的 实际上 发布样本外校准代码

  • 修复 labels=Falseadd_at_risk_counts

  • 允许在add_at_risk_counts中显示特定行

  • patsy 作为适当的依赖项。

  • 抑制一些Pandas 1.1的警告。

0.25.0 - 2020-07-27

新功能

  • 公式!lifelines 现在支持在回归模型中使用类似R的公式。查看文档 这里

  • plot_covariate_group 现在可以绘制其他 y 值,如风险和累积风险(默认:生存函数)。

  • CoxPHFitter 现在通过 entry_col 接受延迟条目。

  • calibration.survival_probability_calibration 现在可以处理样本外数据。

  • print_summary 现在接受一个 column 参数来过滤显示的数值。这有助于减少笔记本、latex 或终端中的杂乱。

  • add_at_risk_counts 现在遵循了酷炫的新KMunicate建议

API变更

  • 随着公式的引入,所有模型都可以在底层使用公式。

    • 对于自定义回归模型或非AFT回归模型,这意味着您不再需要向DataFrame添加常量列(而是在regressors字典中添加1作为公式字符串)。您可能还需要从regressors中删除T和E列。我已经更新了\examples文件夹中的模型,以展示这种新模型的构建示例。

  • 不幸的是,如果使用公式,您的模型将无法被序列化。这是一个上游库的问题,我希望在不久的将来能够解决它。

  • plot_covariate_groups 已被弃用,推荐使用 plot_partial_effects_on_outcome

  • plot_covariate_groups 中的基线已从均值观察值(包括虚拟编码的分类变量)更改为序数(包括连续变量)的中位数和分类变量的众数

  • 以前,lifelines在回归中添加常量列时使用标签"_intercept"。为了与Patsy保持一致,我们现在使用"Intercept"

  • 在AFT模型中,ancillary_df 参数已更名为 ancillary。这反映了该参数更广泛的用途(不 总是DataFrame,现在也可能是布尔值或字符串)。

  • lifelines 附带的数据集中的一些列名已更改。

  • 从未使用的“lifelines.metrics”已被删除。

  • 随着公式的引入,plot_covariate_groups(现在称为plot_partial_effects_on_outcome)对于转换后的变量的行为有所不同。用户不再需要添加“导数”特征,编码是隐式完成的。请参阅文档这里

  • 所有异常和警告已移至 lifelines.exceptions

错误修复

  • 由于自由度不正确,CoxPHFitter的样条函数的对数似然比检验的p值返回了错误的结果。

  • 在IDE和Jupyter导出中更好的print_summary逻辑。以前它不应该被显示。

  • p值已在SplineFitter中进行了修正。之前,“零假设”是系数不等于0,而是等于0.01。现在已将其设置为前者。

  • 修复了在survival_table_from_events中当某个间隔内没有事件发生时出现NaN错误的bug。

0.24.16 - 2020-07-09

新功能

  • 改进了用于大型DataFrames的Cox模型的算法选择。应该会看到显著的性能提升。

错误修复

  • 修复了utils.median_survival_time不接受Pandas Series的问题。

0.24.15 - 2020-07-07

错误修复

  • 修复了KaplanMeierFitter中的一个边缘情况,即一个非常晚的进入会在所有其他人口死亡后发生。

  • 修复了plotBreslowFlemingtonHarrisFitter中的问题

  • 修复了在CoxPHFitter("spline")预测方法中使用conditional_aftertimes时被忽略的错误。

0.24.14 - 2020-07-02

错误修复

  • 修复了一个在使用预测方法时使用conditional_aftertimes会导致形状错误的bug

  • 修复了一个bug,其中score无法在样条CoxPHFitter中使用

  • 修复了一个错误,其中某些列不会显示在 print_summary

0.24.13 - 2020-06-22

错误修复

  • 修复了一个错误,其中CoxPHFitter会忽略输入的alpha水平的置信区间

  • 修复了一个bug,其中CoxPHFitter在与sklearn_adapter一起工作时会失败

0.24.12 - 2020-06-20

新功能

  • 改进了GeneralizedGamma(Regression)Fitter的收敛性。

0.24.11 - 2020-06-17

新功能

  • 新的样条回归模型 CRCSplineFitter 基于 Michael J. Crowther, Patrick Royston, Mark Clements 的论文“A flexible parametric accelerated failure time model”。

  • 新的生存概率校准工具 lifelines.calibration.survival_probability_calibration 用于帮助 验证回归模型。基于 P. Austin、F. Harrell 和 D. van Klaveren 的“生存模型的图形校准曲线和综合校准指数(ICI)”。

API变更

  • (以及错误修复)回归模型中的标量参数未被penalizer惩罚 - 我们现在惩罚除线性关系中的截距项之外的所有内容。

0.24.10 - 2020-06-16

新功能

  • 在CoxPHFitter中使用样条模型的新改进 - 它应该提供更好的预测和基线风险估计,包括外推和内插。

API变更

  • 与上述相关:拟合的样条参数现在可以在 .summary.print_summary 方法中使用。

错误修复

  • 修复了一些区间删失模型初始化中的错误 -> 更好的收敛性。

0.24.9 - 2020-06-05

新功能

  • 针对区间删失数据的更快NPMLE

  • logrank_test 中可用的新权重:wilcoxontarone-warepetofleming-harrington。感谢 @sean-reed

  • 新的区间删失数据集: lifelines.datasets.load_mice

错误修复

  • 清理了plot_loglogs中的一些错误标签。感谢@sean-reed!

  • 元组现在可以用作单变量模型的输入。

0.24.8 - 2020-05-17

新功能

  • 非参数区间截尾现在实验性可用。 并非所有边缘情况都经过全面检查,并且缺少一些功能。 请在KaplanMeierFitter.fit_interval_censoring下尝试

0.24.7 - 2020-05-17

新功能

  • find_best_parametric_model 可以处理左删失和区间删失。还允许更多的拟合选项。

  • AIC_ 是参数模型的一个属性,而 AIC_partial_ 是 Cox 模型的一个属性。

  • penalizer 在所有回归模型中现在可以是一个数组而不是浮点数。这使得新的功能和更好的惩罚控制成为可能。这与R中的penalty.factors在glmnet中类似(但不完全相同)。

  • 一些收敛调整,应该有助于改善最近的性能回归。

0.24.6 - 2020-05-05

新功能

  • 以一些性能为代价,许多模型的收敛性得到了改善。

  • 新增 lifelines.plotting.plot_interval_censored_lifetimes 用于绘制区间删失数据 - 感谢 @sean-reed!

错误修复

  • 修复了cdf_plotqq_plot未正确考虑权重的错误。

0.24.5 - 2020-05-01

新功能

  • plot_lifetimes 接受 pandas Series。

错误修复

  • 修复了区间删失模型中的重要错误。强烈建议使用区间删失的用户进行升级。

  • 改进了子图的at_risk_counts

  • CoxTimeVaryingFitter添加更多数据验证检查

0.24.4 - 2020-04-13

错误修复

  • 改进了参数模型中区间删失的稳定性。

  • ancillary_df中设置数据框适用于区间审查

  • .score 适用于区间删失模型

0.24.3 - 2020-03-25

新功能

  • 新的 logx 参数用于绘制曲线

  • PH模型具有compute_followup_hazard_ratios用于模拟在之前时间的风险比。这是有用的,因为最终的风险比是这些的某种加权平均值。

错误修复

  • 修复了HTML打印机中隐藏一致性指数信息的错误。

0.24.2 - 2020-03-15

错误修复

  • 修复了当没有协变量传入CoxPHFitter时的错误。参见 #975

  • 修复了StatisticalResult中测试名称未正确显示的错误。

  • 修复了在参数模型的plot_covariate_groups中的关键字错误。

0.24.1 - 2020-03-05

新功能

  • 对使用样条估计的GeneralizedGammaRegressionFitter和CoxPHFitter进行了稳定性改进。

错误修复

  • 修复了NelsonAalenFitter中绘制危险函数的错误。

0.24.0 - 2020-02-20

此版本及未来版本的 lifelines 不再支持 py35。 完全支持 Pandas 1.0 及之前的版本。最低 Scipy 版本已提升至 1.2.0。

新功能

  • CoxPHFitterCoxTimeVaryingFitter 支持弹性网络惩罚,包括 L1 和 L2 回归。

  • CoxPHFitter 有新的基线生存估计方法。 具体来说,spline 现在使用样条估计系数和基线生存。传统方法 breslow 仍然是默认方法。

  • 回归模型有一个新的score方法,它将根据数据集(例如:测试或验证数据集)对你的模型进行评分。默认是评估对数似然,但也可以选择一致性指数。

  • 新的MixtureCureFitter用于快速创建单变量混合模型。

  • 单变量参数模型有一个plot_densitydensity_at_times,以及属性density_,用于计算概率密度函数估计。

  • 新的数据集用于涉及C. Botulinum的区间回归。

  • 新的 lifelines.fitters.mixins.ProportionalHazardMixin 实现了比例风险检查。

API变更

  • 模型的预测方法现在返回一个Series(以前返回DataFrame)。这包括predict_medianpredict_percentilepredict_expectationpredict_log_partial_hazard,以及其他可能的方法。

  • Cox模型中的惩罚现在根据观察数量进行缩放。这使得它对样本大小的变化保持不变。这一变化还使得惩罚幅度与任何参数回归模型的行为相同。

  • score_ 在模型上已被重命名为 concordance_index_

  • 模型的 .variance_matrix_ 现在是一个 DataFrame。

  • CoxTimeVaryingFitter 不再需要 id_col。它是可选的,如果提供了,可能会进行一些完整性检查。

  • utils.k_fold_cross_validation的重大更改。

  • 移除了自动添加infPiecewiseExponentialRegressionFitter.breakpointsPiecewiseExponentialFitter.breakpoints

  • tie_method 已从Cox模型中移除(它始终是Efron方法…)

  • Mixins 已移至 lifelines.fitters.mixins

  • find_best_parametric_model evaluation 参数已更改为 scoring_method

  • 从Cox模型中移除了_score_path

错误修复

  • 修复了show_censorsKaplanMeierFitter.plot_cumulative_density的问题,参见问题 #940。

  • 修复了"BIC"代码路径在find_best_parametric_model中的错误

  • 修复了AFT模型中左截尾不收敛的问题

  • Cox模型现在在其log_likelihood_中包含了任何惩罚项

0.23.9 - 2020-01-28

错误修复

  • 修复了当参数回归模型无法为拟合参数的方差分配正确标签时的重要错误。更多信息请参见:https://github.com/CamDavidsonPilon/lifelines/issues/931。使用GeneralizedGammaRegressionFitter和任何自定义回归模型的用户应尽快更新其代码。

0.23.8 - 2020-01-21

错误修复

  • 修复了当参数回归模型无法为拟合参数分配正确标签时的重要错误。更多信息请参见: https://github.com/CamDavidsonPilon/lifelines/issues/931。使用 GeneralizedGammaRegressionFitter 和任何自定义回归模型的用户应尽快更新其代码。

0.23.7 - 2020-01-14

针对py3.5的bug修复。

0.23.6 - 2020-01-07

新功能

  • 新的单变量模型,SplineFitter,使用三次样条来建模累积风险。

  • 为了帮助用户选择最佳的参数模型,有一个新的 lifelines.utils.find_best_parametric_model 函数,它将 遍历模型并返回具有最低AIC的模型 (默认情况下)。

  • 自定义参数回归模型现在可以进行左截尾和区间截尾。

0.23.5 - 2020-01-05

新功能

  • 新的predict_hazard用于参数回归模型。

  • 新的淋巴结癌症数据集,最初来自H.F. 为德国乳腺癌研究组 (GBSG) (1994)

错误修复

  • 修复了当回归模型的收敛失败时抛出的错误。

  • kwargs 现在用于 plot_covariate_groups

  • 修复了print_summary中大指数数字未被正确抑制的错误。

0.23.4 - 2019-12-15

  • PyPI的Bug修复

0.23.3 - 2019-12-11

新功能

  • StatisticalResult.print_summary 支持 html 输出。

错误修复

  • 修复 printer.py 中的导入问题

  • 修复使用单变量模型的HTML打印问题。

0.23.2 - 2019-12-07

新功能

  • 新的 lifelines.plotting.rmst_plot 用于生成生存曲线和RMST的漂亮图表。

  • 新的方差计算用于 lifelines.utils.restricted_mean_survival_time

  • 回归模型预处理的性能改进。应该使具有大量列的数据集表现更好。

错误修复

  • 修复了AAF类的print_summary

  • 修复了sklearn_adapter类的repr。

  • 修复了在Cox模型中使用的conditional_after与分层的情况。

0.23.1 - 2019-11-27

新功能

  • 新的 print_summary 选项 style 用于打印 HTML、LaTeX 或 ASCII 输出

  • CoxPHFitter 的性能改进 - 对于某些数据集,性能提升高达30%。

错误修复

  • 修复了在HTML输出中print_summary未显示计算统计数据的错误。

  • 修复了模型中显示“None”的bug __repr__

  • 修复了StatisticalResult.print_summary中的错误

  • 修复了在使用print_summary与左截尾模型时的错误。

  • 许多小错误修复。

0.23.0 - 2019-11-17

新功能

  • 新的 print_summary 抽象,允许在 Jupyter 笔记本中进行 HTML 打印!

  • 消除了一些警告。

错误修复

  • 某些参数单变量模型的“比较”值不标准,因此零假设的p值可能是错误的。现在这个问题已经修复。

  • 修复了KaplanMeierFitter置信区间中的NaN错误

API变更

  • 为了使模型之间的值对齐,参数单变量模型中置信区间的列名在summary中已更改。

  • 修复了ParametricUnivariateFitter名称中的拼写错误。

  • median_ 已被移除,取而代之的是 median_survival_time_

  • left_censorshipfit 中已被移除,转而支持 fit_left_censoring

0.22.10 - 2019-11-08

测试已重构以随包一起发布。如果这导致问题,请告诉我。

错误修复

  • 修复了在绘制模型时,标签名称中包含“lower”或“upper”时的错误。

  • 修复了在AFT模型中使用大于1维数组作为values参数时plot_covariate_groups的bug。

0.22.9 - 2019-10-30

错误修复

  • 修复了当未指定timeline时AFT模型中的predict_方法。

  • 修复了qq_plot中的错误

  • 修复了在提交模型时qth_survival_time中的错误

  • CoxPHFitter 现在在更改 alpha 参数时显示正确的列值。

0.22.8 - 2019-10-06

新功能

  • 序列化 lifelines 得到了更好的支持。现在支持像 joblib 和 pickle 这样的包。感谢 @AbdealiJK!

  • conditional_after 现在可以在 CoxPHFitter.predict_median 中使用

  • 抑制了一些不重要的警告。

错误修复

  • 修复了AFT模型中忽略的初始点问题。

0.22.7 - 2019-09-29

新功能

  • 新的 ApproximationWarning 用于告知你是否该包正在做出可能误导的近似。

错误修复

  • 修复了区间删失数据的参数预测中的一个错误。

  • print_summary中重新对齐的值。

  • 修复了survival_difference_at_fixed_point_in_time_test中的错误

API变更

  • utils.qth_survival_time 不再接受 cdf 参数 - 用户应使用其补集 (1-cdf)。

  • 一些之前的StatisticalWarnings已被ApproximationWarning取代

0.22.6 - 2019-09-25

新功能

  • conditional_after 适用于 CoxPHFitter 预测模型 😅

错误修复

API变更

  • CoxPHFitter.baseline_cumulative_hazard_的列被重命名为 "baseline cumulative hazard" - 以前它是 "baseline hazard"。(仅适用于模型没有分层的情况。)

  • utils.dataframe_interpolate_at_times 已重命名为 utils.interpolate_at_times_and_return_pandas

0.22.5 - 2019-09-20

新功能

  • 对考虑权重的模型的repr进行了改进。

  • 更好地支持对Pandas Series进行预测

错误修复

  • 修复了fit_interval_censoring不接受列表的问题。

  • 修复了AalenJohansenFitter无法绘制置信区间的问题。

API变更

  • _get_initial_value 在参数单变量模型中已更名为 _create_initial_point

0.22.4 - 2019-09-04

新功能

  • 对回归模型进行了一些性能改进。

  • lifelines 将避免在回归模型中惩罚截距(也称为偏差)变量。

  • 新的 utils.restricted_mean_survival_time 使用数值积分对生存函数进行近似计算。

API变更

  • KaplanMeierFitter.survival_function_的索引不再命名为“timeline”。

错误修复

  • 修复了如果数据集中存在NaN时,concordance_index 永远不会退出的问题。

0.22.3 - 2019-08-08

新功能

  • 模型现在暴露了一个log_likelihood_属性。

  • 新的 conditional_after 参数在 predict_* 方法上,使得对受审查对象的预测更加容易。

  • 新增 lifelines.utils.safe_exp 以便更容易处理 exp 溢出问题。

  • 为参数回归模型提供更智能的初始条件。

  • 新的回归模型:GeneralizedGammaRegressionFitter

API变更

  • 移除了 lifelines.utils.gamma - 改用 autograd_gamma 库。

  • 移除了bottleneck作为依赖项。它仅在Cox模型中提供了轻微的性能提升,并且只使用了API的一小部分。

错误修复

  • AFT对数似然比检验未正确使用权重。

  • 修正(通过提升)了scipy和autograd的依赖项

  • 大多数模型的收敛性得到了改善,并且许多exp溢出警告已被消除。

  • 修复了LogLogisticAFTFitterpredict_percentile的一个错误。围绕此问题已添加了新的测试。

0.22.2 - 2019-07-25

新功能

  • lifelines 现在兼容 scipy>=1.3.0

错误修复

  • 修复了在回归模型中使用robust=True时的打印错误

  • GeneralizedGammaFitter 可能更稳定。

  • lifelines 曾经允许使用旧版本的 numpy (1.6),但这在使用库时导致了错误。正确的 numpy 已被固定(至 1.14.0+)

0.22.1 - 2019-07-14

新功能

  • 新的单变量模型,GeneralizedGammaFitter。该模型包含许多子模型,因此是检查拟合的良好模型。

  • 当时间变化的数据集包含瞬时死亡时,添加了一个警告。

  • 在单变量参数拟合器中添加了一个initial_point选项。

  • initial_point 参数存在于参数化单变量拟合器中 .fit

  • event_table 现在是所有单变量拟合器的一个属性(如果存在右删失)

  • lifelines.utils.gamma的改进

API变更

  • 在AFT模型中,confidence_intervals_中的列名已更改为包含alpha值。

  • 在AFT模型中,.summary.print_summary 中的一些列名已更改为包含alpha值。

  • 在AFT模型中,.summary.print_summary 中的一些列名包括值的指数的置信区间。

错误修复

  • 在绘图函数中使用censors_show时,审查标记现在对显示的估计值具有反应性。

  • 修复了KaplanMeierFitter置信区间中的溢出错误

  • 改进了CoxTimeVaryingFitter的数据验证

0.22.0 - 2019-07-03

新功能

  • 能够通过指定累积风险来创建自定义参数回归模型。这使得AFT模型的新建和扩展成为可能。

  • percentile(p) 方法已添加到单变量模型中,用于求解方程 p = S(t) 中的 t

  • 对于参数单变量模型,conditional_time_to_event_ 现在是精确的,而不是近似值。

API变更

  • 在Cox模型中,属性hazards_已被重命名为params_。这与其他回归模型更加一致,并且更加清晰(毕竟什么是风险?)

  • 在Cox模型中,一个新的hazard_ratios_属性可用,它是params_的指数化。

  • 在Cox模型中,confidence_intervals_中的列名已更改为包含alpha值。

  • 在Cox模型中,.summary.print_summary 中的一些列名已更改为包含alpha值。

  • 在Cox模型中,.summary.print_summary 中的一些列名包括值的指数的置信区间。

  • 对内部AFT代码的重大更改。

  • 对AFT模型中fit_intercept工作方式的更改。以前可以将fit_intercept设置为False而不必设置ancillary_df - 现在必须指定一个DataFrame。

错误修复

  • 对于参数单变量模型,conditional_time_to_event_ 现在是精确的,而不是近似值。

  • 修复了CoxTimeVaryingFitter.plot中的名称错误bug

0.21.5 - 2019-06-22

由于部署问题,我将跳过0.21.4版本。

新功能

  • scoring_method 现在是 sklearn_adapter 的一个关键字参数

错误修复

  • 修复了scikit-learn的隐式导入。scikit-learn是一个可选的包。

  • 修复了导致x轴刻度和风险计数不对齐的视觉错误。 感谢@christopherahern!

0.21.3 - 2019-06-04

新功能

  • lifelines 中包含了一个 scikit-learn 适配器,因此 lifeline 的模型可以与 scikit-learn 的 API 一起使用。请参阅文档

  • CoxPHFitter.plot 现在接受一个 hazard_ratios(布尔值) 参数,该参数将绘制风险比(和置信区间)而不是对数风险比。

  • CoxPHFitter.check_assumptions 现在接受一个 columns 参数 来指定仅检查列的子集。

错误修复

  • covariates_from_event_matrix 更好地处理空值

0.21.2 - 2019-05-16

新功能

  • 新的回归模型:PiecewiseExponentialRegressionFitter 现已可用。请参阅此处的博客文章: https://dataorigami.net/blogs/napkin-folding/churn

  • 回归模型有一个新方法 log_likelihood_ratio_test,它计算的是对数似然比检验。以前这是一个内部API,现在被公开了。

API变更

  • 非参数估计器(如KaplanMeierFitter等)的predict方法的默认行为已从(以前的)线性插值更改为(新的)返回最后一个值。通过interpolate标志仍然可以进行线性插值。

  • 在回归模型上移除_compute_likelihood_ratio_test。现在使用log_likelihood_ratio_test

错误修复

0.21.1 - 2019-04-26

新功能

  • 用户可以自己提供开始和停止列名在 add_covariate_to_timeline

  • PiecewiseExponentialFitter 现在允许使用 numpy 数组作为断点

API变更

  • 当将行折叠为间隔时,survival_table_from_events 的输出现在移除了“aggregate”列的多重索引。

错误修复

  • 修复了在提供ax时CoxTimeVaryingFitter中的错误,感谢@j-i-l!

0.21.0 - 2019-04-12

新功能

  • weights 现在是参数化单变量模型的可选关键字参数。

  • 所有单变量和多变量参数模型现在都能够处理左、右和区间删失数据(前两者是后者的特殊情况)。用户可以使用fit_right_censoring(这是fit的别名)、fit_left_censoringfit_interval_censoring

  • 一个新的区间删失数据集可在 lifelines.datasets.load_diabetes下获取

API变更

  • left_censorship 在所有单变量拟合器上已被弃用。 请使用新的API model.fit_left_censoring(...)

  • invert_y_axismodel.plot(... 中已被移除。

  • entries 属性在多变量参数模型中有一个新的 系列名称: entry

错误修复

  • lifelines 曾经静默地将事件向量中的任何 NaN 转换为 True。现在会抛出错误。

  • 修复了一个错误,该错误导致用户无法在AFT模型的预测中使用Numpy数组

0.20.5 - 2019-04-08

新功能

  • print_summary 的性能改进。

API变更

  • utils.survival_events_from_table 返回一个整数权重向量以及持续时间和审查向量。

  • AalenJohansenFitter中,variance参数被重命名为variance_,以符合通常的lifelines惯例。

错误修复

  • 修复了在使用分层时CoxTimeVaryingFitter的似然比检验中的错误。

  • 修复了AalenJohansenFitter的一些绘图错误

0.20.4 - 2019-03-27

新功能

  • AFT模型中的左截断支持,使用entry_col参数 在fit()

  • generate_datasets.piecewise_exponential_survival_data 用于生成分段指数数据

  • 为AFT模型提供更快的print_summary

API变更

  • Pandas 现在正确地固定为 >= 0.23.0。这一直是事实,但在 setup.py 中没有正确指定。

错误修复

  • 更好地处理print_summary中的极大数字

  • PiecewiseExponentialFitter 可以通过 from lifelines import * 使用。

0.20.3 - 2019-03-23

新功能

  • 现在 cumulative_density_survival_function_ 在拟合的 KaplanMeierFitter总是存在。

  • KaplanMeierFitter上的新属性/方法: plot_cumulative_density(), confidence_interval_cumulative_density_, plot_survival_functionconfidence_interval_survival_function_

0.20.2 - 2019-03-21

新功能

  • 单变量参数模型现在支持左截断: .fit(..., left_censorship=True)。示例在文档中。

  • 新数据集:lifelines.datasets.load_nh4()

  • 单变量参数模型现在默认包括对累积密度函数的支持:.cumulative_density_.confidence_interval_cumulative_density_plot_cumulative_density()cumulative_density_at_times(t)

  • 为处理删失数据的单变量参数模型添加一个lifelines.plotting.qq_plot

API变更

  • plot_lifetimes 在绘制时不再反转顺序。感谢 @vpolimenov!

  • load_lcd 数据集中的 C 列被重命名为 E

错误修复

  • 修复了当left_censorship设置为True时,KaplanMeierFitter中的命名错误,plot_cumulative_density_()现在改为plot_cumulative_density()

  • 在传入timedeltas时添加了一些错误处理。理想情况下,用户不应传入timedeltas,因为其尺度是模糊的。然而,之前的错误信息不够明确,因此我们进行了一些转换,警告用户,并将其传递下去。

  • qth_survival_times 对于一个截断的CDF,如果q参数低于截断限制,将返回 np.inf。这应该是 -np.inf

0.20.1 - 2019-03-16

  • CoxPHFitter进行了一些性能改进(大约30%)。我知道这可能看起来有点傻,但我们现在与R的survival包中的Cox模型相比,速度相同或略快(针对某些测试数据集和某些配置)。这是一个大事,因为1)lifelines在之前做了更多的错误检查,2)R的cox模型是用C编写的,而我们仍然是纯Python/NumPy,3)R的cox模型有几十年的开发历史。

  • 抑制了不重要的警告

API变更

  • 以前,lifelines 总是会在cph.baseline_hazard_中添加一个0行,即使此时没有事件发生。现在不再是这样了。然而,如果存在一个持续时间为0(无论是否被观察到)的情况,仍然会添加一个0。

0.20.0 - 2019-03-05

  • 从0.20.0版本开始,仅支持Python3。最近安装的版本中有超过75%是Py3。

  • 更新了最低依赖项,特别是Matplotlib和Pandas。

新功能

  • 为AFT模型提供更智能的初始化,这应该会提高收敛性。

API变更

  • initial_beta 在Cox模型的 .fit 中现在改为 initial_point

  • initial_point 现在可以在 AFT 模型和 CoxTimeVaryingFitter 中使用

  • 单变量模型的DataFrame confidence_intervals_ 现在被转置了(以前的参数是列,现在参数是行)。

错误修复

  • 修复了绘图和check_assumptions的一个错误。

0.19.5 - 2019-02-26

新功能

  • plot_covariate_group 可以接受多个协变量进行绘图。这对于具有隐式相关性的列(如多项式特征或分类变量)非常有用。

  • AFT模型的收敛性改进。

0.19.4 - 2019-02-25

错误修复

  • 移除CoxPHFitter中的一些不良打印语句。

0.19.3 - 2019-02-25

新功能

  • 新的AFT模型:LogNormalAFTFitterLogLogisticAFTFitter

  • AFT模型现在接受一个weights_col参数来fit

  • 现在可以在AFT模型中使用稳健误差(三明治误差),通过在fit中使用robust=True参数。

  • CoxPHFitterCoxTimeVaryingFitter模型中,print_summary的性能有所提升。

0.19.2 - 2019-02-22

新功能

  • ParametricUnivariateFitters,如WeibullFitter,在绘制时具有平滑的图形(相对于阶梯图形)

错误修复

  • ExponentialFitter 的对数似然 不正确 - 然而推断是正确的。

  • 单变量拟合器更加灵活,可以允许2维和DataFrame作为输入。

0.19.1 - 2019-02-21

新功能

  • 提高了LogNormalFitter的稳定性

  • Python3 用户不再被迫使用 2.x 版本的 Matplotlib。

API变更

  • 重要: 我们将PiecewiseExponential的参数化更改为与ExponentialFitter相同(从\lambda * t更改为t / \lambda)。

0.19.0 - 2019-02-20

新功能

  • 新的回归模型 WeibullAFTFitter 用于拟合加速失效时间模型。关于如何使用 WeibullAFTFitter(剧透:它的API与其他回归模型相似)以及如何解释输出的文档已添加到我们的文档中。

  • CoxPHFitter 性能改进(约10%)

  • CoxTimeVaryingFitter 性能改进(约10%)

API变更

  • 重要:我们将Cox模型中的.hazards_.standard_errors_更改为pandas Series(而不是Dataframes)。这感觉像是更自然的表示方式。您可能需要更新您的代码以反映这一点。请参阅此处的说明: https://github.com/CamDavidsonPilon/lifelines/issues/636

  • 重要: 我们更改了Cox模型中的.confidence_intervals_,使其转置。这感觉像是更自然的表示方式。您可能需要更新您的代码以反映这一点。请参阅此处的说明: https://github.com/CamDavidsonPilon/lifelines/issues/636

  • 重要: 我们更改了WeibullFitterExponentialFitter的参数化方式,从\lambda * t改为t / \lambda。这样做有几个原因:1) 这是文献中更常见的参数化方式,2) 它有助于收敛。

  • 重要: 在我们添加截距的模型中(目前只有 AalenAdditiveModel),添加的列名已从 baseline 更改为 _intercept

  • 重要:在所有拟合器中,alpha 的含义已更改为置信区间中 alpha 的标准解释。这意味着在最新版本的 lifelines 中,alpha 的默认值设置为 0.05,而不是之前版本中的 0.95。

错误修复

  • 修复了ParametericUnivariateFitter模型中_log_likelihood_属性的一个错误。它之前显示的是“平均”对数似然(即按1/n缩放),而不是总数。现在它显示的是总数。

  • 在模型print_summary中,修正了一个标签错误。它应该是“对数似然检验”,而不是“似然检验”。

  • 修复了一个过于频繁拒绝event列数据类型的错误。

  • 修复了分层Cox模型中一致性指数的计算错误。感谢@airanmehr!

  • 修复了一些Pandas <0.24的bug。

0.18.6 - 2019-02-13

  • check_assumptions的输出进行了一些改进。 show_plots现在默认设置为False。它现在只显示 rankkm的p值。

  • qth_survival_time进行了一些性能改进。

0.18.5 - 2019-02-11

  • 为参数化单变量模型添加了新的绘图方法: plot_survival_function, plot_hazardplot_cumulative_hazard。最后一个方法是 plot 的别名。

  • 向参数单变量模型添加了新属性: confidence_interval_survival_function_, confidence_interval_hazard_, confidence_interval_cumulative_hazard_。最后一个属性是 confidence_interval_的别名。

  • 修复了在使用大型数据集时,AalenJohansenFitter的方差计算中的一些溢出问题。

  • 修复了AalenJohansenFitter中的一个边缘情况,该情况导致某些数据集过于频繁地被抖动。

  • AalenJohansenFitter添加一个新的关键字参数calculate_variance,该参数可用于关闭方差计算,因为对于大型数据集,这可能需要很长时间。感谢@pzivich!

0.18.4 - 2019-02-10

  • 修复了参数单变量模型中累积风险的置信区间。之前它们严重偏低。

  • 通过entry参数在.fit中添加对参数化单变量模型的左截断支持

0.18.3 - 2019-02-07

  • 对参数化单变量模型进行了一些性能改进。

  • 抑制一些不相关的NumPy和autograd警告,以便lifeline警告更加明显。

  • 改进了一些警告和错误信息。

0.18.2 - 2019-02-05

  • 新的单变量拟合器 PiecewiseExponentialFitter 用于创建 分段风险模型。请参阅在线文档。

  • 能够使用新的ParametericUnivariateFitter超类创建新颖的参数化单变量模型。请参阅在线文档以了解如何执行此操作。

  • 不幸的是,参数化单变量拟合器无法使用pickle进行序列化。库dill仍然可用。

  • 对参数化单变量拟合器的所有内部进行了全面改造。将它们全部(大部分)迁移到使用autograd

  • LogNormalFitter 不再建模 log_sigma

0.18.1 - 2019-02-02

  • LogNormalFitter 方差估计中的错误修复

  • 提高LogNormalFitter的收敛性。我们现在在内部对sigma的对数进行建模,但仍然在外部暴露sigma。

  • 使用autograd库来帮助计算梯度。

  • 新的LogLogisticFitter单变量拟合器可用。

0.18.0 - 2019-01-31

  • LogNormalFitter 是一个新的单变量拟合器,你可以使用它。

  • WeibullFitter 现在正确地返回置信区间 (之前只返回 NaNs)

  • WeibullFitter.print_summary() 显示与其参数不等于1.0相关的p值 - 以前这是(隐式地)与0进行比较,这显然总是成立的(参数必须大于0)

  • ExponentialFitter.print_summary() 显示与其参数不等于1.0相关的p值 - 以前这是(隐式地)与0进行比较,这显然是总是成立的(参数必须大于0)

  • ExponentialFitter.plot 现在显示累积风险,而不是生存函数。这是为了更容易与 WeibullFitterLogNormalFitter 进行比较。

  • 单变量拟合器的 cumulative_hazard_at_times, hazard_at_times, survival_function_at_times 现在返回 pandas Series(以前是 numpy 数组)

  • 从所有统计函数中移除alpha关键字。这个关键字从未被使用过。

  • print_summary函数中,表示显著性阈值的星号和点已经消失了。

  • 在模型的summary(包括print_summary)中,log(p)项已更改为-log2(p)。这被称为s值。参见https://lesslikely.com/statistics/s-values/

  • 介绍单变量数据集之间的新统计测试: survival_difference_at_fixed_point_in_time_test,…

  • 当Cox模型检测到最大似然可能存在非唯一解时,新的警告信息。

  • 通常:清理生命线异常处理。例如:捕获 LinAlgError: Matrix is singular. 并向用户报告建议。

0.17.5 - 2019-01-25

  • 在使用非数字分层时,修复了plot_covariate_groups中的更多错误。

0.17.4 -2019-01-25

  • 修复了plot_covariate_groups中不允许使用strata的错误。

  • multicenter_aids_cohort_study的名称更改为 load_multicenter_aids_cohort_study

  • groups 现在在 CoxPHFitter.plot_covariate_groups 中被称为 values

0.17.3 - 2019-01-24

  • 修复在使用schoenfeld时,当最小持续时间只有被审查的对象时,compute_residuals的问题。

0.17.2 2019-01-22

  • 另一轮对Cox模型的重大性能改进。CoxPHFitter和CoxTimeVaryingFitter的速度提高了最多2倍。这主要是由于使用NumPy的einsum来简化之前的for循环。缺点是代码现在更加晦涩。不过我已经根据需要添加了注释🤞

0.17.1 - 2019-01-20

  • 添加bottleneck作为依赖项。这个库被Pandas强烈推荐,在lifelines中我们也看到了一些不错的性能提升。(对于CoxPHFitter大约有15%的提升)

  • 在使用batch_mode时,CoxPHFitter中存在一个小错误,导致系数偏离其最大似然估计值。这个错误逃过了测试,这意味着其差异小于0.0001。现在已修复,并添加了更精确的测试。

  • 更快的 CoxPHFitter._compute_likelihood_ratio_test()

  • 修复了CoxTimeVaryingFitter中的Pandas性能警告。

  • CoxTimeVaryingFitter的性能改进。

0.17.0 - 2019-01-11

  • 修正了CoxPHFitter中的行为,其中score_在每次新的fit时没有被刷新。

  • 重新实现了AalenAdditiveFitter。对其进行了重大更改:

    • 实现速度至少快10倍,对于某些数据集可能快100倍。

    • 内存消耗大幅下降

    • AalenAdditiveFitter中移除了时变组件。这将在未来的版本中回归。

    • 新的 print_summary

    • weights_col 已添加

    • nn_cumulative_hazard 已被移除(可能会重新添加)

  • plotting.plot_lifetimes进行了一些绘图改进

0.16.3 - 2019-01-03

  • 更多的CoxPHFitter性能改进。与0.16.2版本相比,某些数据集的处理时间减少了高达40%。

0.16.2 - 2019-01-02

0.16.1 - 2019-01-01

  • 修复了concordance方法中的py2除法错误。

0.16.0 - 2019-01-01

  • 放弃对 Python 3.4 的支持。

  • 介绍了在CoxPHFitter.compute_residuals中的残差计算。残差包括“schoenfeld”、“score”、“delta_beta”、“deviance”、“martingale”和“scaled_schoenfeld”。

  • 移除了estimation命名空间以适应拟合器。现在应该使用from lifelines import xFitter。感谢 @usmanatron

  • 从Cox模型中移除predict_log_hazard_relative_to_mean。 感谢 @usmanatron

  • StatisticalResult 已经被泛化以允许多个结果(例如:来自成对比较)。这意味着一个稍微改变的API,大部分向后兼容。请参阅文档字符串以了解如何使用它。

  • statistics.pairwise_logrank_test 现在返回一个 StatisticalResult 对象,而不是一个复杂的 NxN DataFrame 💗

  • print_summary中显示log(p值)以及p值。此外,低于阈值的p值将被截断。原始p值仍然可以通过.summary恢复。

  • 浮点数 print_summary 现在显示到小数点后两位。这可以通过使用 decimal 参数来更改。

  • Cox模型绘图中移除了standardized。这让人感到困惑。

  • 对Cox模型的视觉改进 .plot

  • print_summary 方法接受 kwargs 以显示。

  • CoxPHFitter 有一个新的易于理解的方法, check_assumptions,用于检查你的Cox比例风险模型的假设。

  • 一个新的辅助工具,用于将静态数据集“扩展”为长格式: lifelines.utils.to_episodic_format

  • CoxTimeVaryingFitter 现在接受 strata

0.15.4

  • 修复了在使用非平凡权重时Cox模型似然比检验的bug。

0.15.3 - 2018-12-18

  • 仅允许使用低于3.0版本的matplotlib。

0.15.2 - 2018-11-23

  • API 更改至 plotting.plot_lifetimes

  • cluster_colstrata 可以在 CoxPHFitter 中一起使用

  • ExponentialFitterWeibullFitter中移除了entry,因为它没有起到任何作用。

0.15.1 - 2018-11-23

  • v0.15.0 的 Bug 修复

  • 如果在CoxTimeVaryingFitter中使用robust标志,则抛出NotImplementedError - 该功能尚未准备好。

0.15.0 - 2018-11-22

  • CoxPHFitterfit添加robust参数。这使得至少可以:i) 在模型中使用非整数权重(这些可能是像IPTW这样的抽样权重),以及ii) 处理错误指定的模型(例如:非比例风险)。在底层,它是一个三明治估计器。这不处理结,所以如果有大量的结,结果可能与其他软件显著不同。

  • standard_errors_ 现在是拟合的 CoxPHFitter 的一个属性,它描述了系数的标准误差。

  • variance_matrix_ 现在是拟合的 CoxPHFitter 上的一个属性,它描述了系数的方差矩阵。

  • 新的收敛标准用于CoxPHFitterCoxTimeVaryingFitter,称为牛顿减量。测试显示它 与之前的系数相比同样准确,并且通常减少 一个步骤,从而通常实现更快的收敛。参见 https://www.cs.cmu.edu/~pradeepr/convexopt/Lecture_Slides/Newton_methods.pdf。 关于牛顿减量的详细信息已添加到show_progress 语句中。

  • scipy 的最低支持版本为 1.0

  • 在使用牛顿-拉夫森方法的模型中,收敛错误现在会抛出ConvergenceError,而不是ValueError(前者是后者的子类)。

  • AalenAdditiveModel 引发 ConvergenceWarning 而不是打印警告。

  • KaplanMeierFitter 现在有一个累积图选项。示例 kmf.plot(invert_y_axis=True)

  • 一个weights_col选项已被添加到CoxTimeVaryingFitter中,该选项允许使用随时间变化的权重。

  • WeibullFitter 有一个新的 show_progress 参数,并且在收敛失败时提供额外的信息。

  • CoxPHFitter, ExponentialFitter, WeibullFitterCoxTimeVaryFitter 方法 print_summary 已更新为新字段。

  • WeibullFitter 已将不正确的 _jacobian 重命名为 _hessian_

  • variance_matrix_ 现在是拟合的 WeibullFitter 上的一个属性,它描述了参数的方差矩阵。

  • 默认的WeibullFitter().timeline已从最小和最大持续时间之间的整数更改为最大和最小持续时间之间的n个浮点数,其中n是观察次数。

  • CoxPHFitter 的性能改进(约快20%)

  • CoxTimeVaryingFitter 的性能改进(约快100%)

  • 在Python3中,单变量模型现在可以使用pickle进行序列化。 感谢@dwilson1988的贡献。对于Python2,dill仍然是首选方法。

  • baseline_cumulative_hazard_(及其衍生函数)在 CoxPHFitter 中现在正确地包含了 weights_col

  • 修复了KaplanMeierFitter中当晚期进入时间与死亡事件对齐时的错误。感谢@pzivich

  • 添加cluster_col参数到CoxPHFitter中,以便用户可以指定可能相关的主题/行组。

  • 将p值的“显著性代码”降低一个数量级。(例如,0.1到0.05之间的p值完全不标注,0.05到0.1之间的p值用.标注,等等)。这与它们在其他软件中的呈现方式不同。有人主张完全从lifelines中移除p值(成为你想在世界上看到的变化 哈哈),但我担心人们可能会错误地手动计算p值,我认为这是一个更糟糕的结果。所以,这是我的立场。0.1到0.05之间的p值提供的信息非常少,因此它们被移除了。在统计学中,越来越多人主张将“显著”发现的标准转移到p值小于0.01。

  • 用于多风险累积发生率的新拟合器 AalenJohansenFitter。感谢@pzivich!请参阅“药物流行病学中估计风险的方法学问题”以获取该模型的良好概述。

0.14.6 - 2018-07-02

  • 修复了multivariate_logrank_test中n > 2组的问题(再次)。

  • 修复了当event_observed列不是布尔类型时的错误。

0.14.5 - 2018-06-29

  • 修复了multivariate_logrank_test中n > 2组的问题

  • 在使用pandas Series时修复KaplanMeierFitter中的权重。

0.14.4 - 2018-06-14

  • baseline_cumulative_hazard_baseline_survival_添加到CoxTimeVaryingFitter中。因此,现在可以使用新的预测方法。

  • 修复了在使用cumulative_sum与多列时add_covariate_to_timeline中的一个错误。

  • 添加了Likelihood ratio testCoxPHFitter.print_summaryCoxTimeVaryingFitter.print_summary

  • CoxTimeVaryingFitter 中的新检查,用于检查即时死亡和冗余行。

  • 新增delay参数在add_covariate_to_timeline

  • statistics中移除了two_sided_z_test

0.14.3 - 2018-05-24

  • 修复了在减去或除以两个带有标签的UnivariateFitters时的错误。

  • 修复了使用CoxTimeVaryingFitter预测方法时的导入错误。

  • CoxTimeVaryingFitterCoxPHFitterplot方法添加一个column参数,以便仅绘制列的子集。

0.14.2 - 2018-05-18

  • 一些提高生活质量的工作改进,包括新的predict_方法,用于与CoxTimeVaryingFitter一起工作。

0.14.1 - 2018-04-01

  • 修复了在CoxPHFitter中使用权重和分层的错误

  • 修复了在KaplanMeierFitter中使用非整数权重时的错误

  • CoxPHFitter中的性能优化,使fit的完成速度提高了40%。

    • 更智能的step_size计算用于迭代优化。

    • 在特定的热点进行简单的代码优化和清理。

  • AalenAdditiveFitter中的性能优化,使得大型数据框的fit完成速度提高了50%,小型数据框的完成速度提高了10%。

0.14.0 - 2018-03-03

  • plot_covariate_groups添加到CoxPHFitter中,以可视化当我们改变一个协变量时,生存情况会发生什么变化,其他条件保持不变。

  • utils 函数如 qth_survival_timesmedian_survival_times 现在返回的是 DataFrame 的转置, 与之前版本的 lifelines 相比。这样做的原因是 我们通常将生存曲线视为 DataFrame 中的列, 而生存曲线的函数作为索引(例如: KaplanMeierFitter.survival_function_ 返回的是在时间 t 的生存曲线)。

  • KaplanMeierFitter.fitNelsonAalenFitter.fit 接受一个 weights 向量,可以用于预聚合的数据集。参见 这个 issue

  • 收敛错误现在返回一个自定义的ConvergenceWarning,而不是RuntimeWarning

  • 对回归数据集中完全分离的新检查。

0.13.0 - 2017-12-22

  • StatisticalResult中移除is_significanttest_result。用户可以通过与p_value比较来选择他们的显著性水平。此类的字符串表示也已更改。

  • CoxPHFitterAalenAdditiveFitter 现在有一个 score_ 属性,它是数据集与拟合模型的一致性指数。

  • CoxPHFitterAalenAdditiveFitter 不再具有 data 属性。它几乎是训练数据的重复, 但在序列化时会导致模型变得非常大。

  • 实现了一个新的拟合器 CoxTimeVaryingFitter,可在 lifelines 命名空间下使用。该模型实现了用于 时变协变量的Cox模型。

  • 用于创建时间变化数据集的工具可在utils中找到。

  • 对完全分离进行较少噪音的检查。

  • 从主 lifelines 命名空间中移除了 datasets 命名空间

  • CoxPHFitter 有一种稍微更智能(勉强算得上…)的方法来选择步长,因此收敛速度通常应该更快。

  • CoxPHFitter.fit 现在接受一个 weight_col 关键字参数,以便可以为每个观察值传递权重。如果你有很多受试者,而协变量的空间不大,这将非常有用。因此,你可以将相同的受试者分组,并给该观察值一个等于计数的权重。总的来说,这意味着回归速度会快得多。

0.12.0

0.11.3

  • 不再支持 matplotlib 1.X

  • times参数添加到CoxPHFitterpredict_survival_functionpredict_cumulative_hazard中, 以预测估计值,而不是使用默认的观察或审查时间。

  • 更准确的预测方法参数化单变量模型。

0.11.2

  • 将许可证更改为vanilla MIT。

  • 显著加快 NelsonAalenFitter.fit 的速度。

0.11.1 - 2017-06-22

  • Python3 修复了 CoxPHFitter.plot

0.11.0 - 2017-06-21

  • 修复了在使用Seaborn和lifelines时KaplanMeierFitter.plot中的回归问题。

  • 介绍一个新的.plot函数到一个拟合的CoxPHFitter实例。这个函数绘制风险系数及其置信区间。

  • 在所有绘图方法中,ix 参数已被弃用,取而代之的是一个新的 loc 参数。这是为了与 Pandas 弃用 ix 保持一致。

0.10.1 - 2017-06-05

  • 修复了CoxPHFitter预测方法中的内部归一化问题。

0.10.0

  • 修正了在CoxPHFitter中当normalize=True时返回错误基线生存和风险值的bug。

  • 移除了normalize参数在CoxPHFitter中。这给用户带来了很多困惑,并增加了代码的复杂性。能够移除它真是太好了。

  • CoxPHFitter.baseline_survival_中更正列名

  • CoxPHFitter.baseline_cumulative_hazard_ 始终居中,以模仿 R 的 basehaz API。

  • 新增 predict_log_partial_hazardsCoxPHFitter

0.9.4

  • plot_loglogs添加到KaplanMeierFitter

  • 添加了一个(正确的)检查,以查看数据集中的某些列是否会导致收敛问题。

  • 移除plot方法中的flat参数。它引起了混淆。要复制它,可以设置ci_force_lines=Trueshow_censors=True

  • 在初始化时向CoxPHFitter添加strata关键字参数(例如:CoxPHFitter(strata=['v1', 'v2']))。为什么?现在,使用strata初始化的Fitters可以传递给k_fold_cross_validation,此外,它使得单元测试strata Fitters更加容易。

  • 如果在CoxPHFitter中使用strata,则可以访问特定层的基线风险和生存函数(以前是混合值)。预测也使用特定的基线风险/生存。

  • CoxPHFitter 的性能改进 - 在 fit 中应该至少能看到 10% 的速度提升。

0.9.2

  • 弃用0.18之前的Pandas版本。

  • 如果在c-index计算中没有可接受的对,则抛出错误。以前返回的是NaN。

0.9.1

  • 向Weibull和Exponential拟合器添加两个摘要函数,解决了 #224

0.9.0

  • CoxPHFitter中的新预测函数, predict_log_hazard_relative_to_mean,模仿了R的 predict.coxph的功能。

  • 移除CoxPHFitter和AalenAdditiveFitter中的predict方法。这是因为选择predict_median作为默认值引起了太多混淆,而且没有其他自然的选择作为默认值。所有其他的predict_方法仍然保留。

  • k_fold_cross_validation中的默认预测方法现在是 predict_expectation

0.8.1 - 2015-08-01

  • 支持 matplotlib 1.5。

  • 在AalenAdditiveModel的__init__中引入了一个参数nn_cumulative_hazards(默认为True)。该参数将在预测方法中将所有非负累积风险截断为0。

  • 错误修复包括:

    • 修复了_newton_rhaphson中的while循环过早中断导致变量未正确设置的问题。

    • NelsonAalenFitter 中平滑风险的缩放比例偏离了 0.5 倍。

0.8.0

  • 重新组织了 lifelines 目录:

    • 将测试文件移出主目录。

    • utils.py 移动到它自己的目录中。

    • 将所有估计器 fitters 移动到目录中。

  • group_survival_table_from_eventssurvival_table_from_events的输出中添加了一个at_risk

  • 添加了统计检验的样本量和功效计算。参见 lifeline.statistics. sample_size_necessary_under_cphlifelines.statistics. power_under_cph

  • 修复了在使用KaplanMeierFitter处理左删失数据时的一个错误。

0.7.1

  • CoxPHFitter添加一个l2penalizer

  • 放弃了高效的Python版本的Fortran实现。Lifelines再次成为纯Python!

  • 添加了strata关键字参数到CoxPHFitter,以允许在数据集中对单个或一组分类变量进行分层。

  • datetimes_to_durations 现在接受一个列表作为 na_values,因此可以检查多个值。

  • 修复了datetimes_to_durations中的一个错误,其中fill_date没有被正确应用。

  • datetimes_to_durations中更改了警告以使其正确。

  • 将每个拟合器重构为其自己的子模块。目前,测试仍在同一个文件中。这也不会破坏API。

0.7.0 - 2015-03-01

  • 允许多个拟合器传递到 k_fold_cross_validation

  • lifelines.statistics 中的统计测试现在返回一个 StatisticalResult 对象,该对象具有诸如 p_valuetest_resultssummary 等属性。

  • 修复了执行对数秩统计检验时的一个错误。协方差矩阵未正确计算。这导致了略微不同的p值。

  • WeibullFitter, ExponentialFitter, KaplanMeierFitterBreslowFlemingHarringtonFitter 都有一个 conditional_time_to_event_ 属性,用于测量在时间 t 之前存活的情况下,直到死亡事件的中位剩余时间。

0.6.1

  • WeibullFitterExponentialFitter添加median_属性。

  • WeibullFitterExponentialFitter 将使用整数时间线,而不是由 linspace 提供的浮点数。这样做的原因是,如果你的工作是总结生存函数(用于期望值或类似的东西),那么犯错误的可能性会更小。

0.6.0 - 2015-02-04

  • 包含单变量拟合器 WeibullFitterExponentialFitter

  • 从 lifelines 中移除 BayesianFitter

  • 为AalenAdditiveFitter添加了新的惩罚方案。您现在可以添加一个平滑惩罚器,该惩罚器将尝试保持危险曲线的后续值接近。惩罚系数为smoothing_penalizer

  • 在AalenAdditiveFitter中将penalizer关键字参数更改为coef_penalizer

  • utils.py 中新增 ridge_regression 函数,用于执行带有 l2 惩罚项的线性回归。

  • Matplotlib 不再是必需的依赖项。

  • .predict(time) 方法在单变量拟合器上现在可以接受一个标量(并返回一个标量)和一个可迭代对象(并返回一个 numpy 数组)

  • KaplanMeierFitter中,epsilon已被重命名为 precision

0.5.1 - 2014-12-24

  • CoxPHFitterAalenAdditiveFitter 的新 API:event_colduration_col 的默认参数。duration_col 现在是必需的,而 event_col 现在接受一个列,或者默认情况下为 None,这假设所有事件都被观察到(未删失)。

  • 修复统计测试。

  • 允许在Fitters中使用负持续时间。

  • survival_table_from_events 中的新 API:min_observations 被替换为 birth_times(默认值为 None)。

  • CoxPHFitter 中的新 API 用于摘要:summary 将返回一个包含统计信息的数据框,print_summary() 将以美观的方式打印数据框(以及其他一些统计信息)。

  • 在单变量拟合器的plot方法中添加“风险”计数选项, .plot(at_risk_counts=True),以及函数 lifelines.plotting.add_at_risk_counts

  • 修复Epanechnikov核的bug。

0.5.0 - 2014-12-07

  • 将测试迁移到py.test

  • 将测试重构为更小的文件

  • 使 test_pairwise_logrank_test_with_identical_data_returns_inconclusive 成为一个更好的测试

  • 为summary()添加测试

  • 可以使用替代指标进行k_fold_cross_validation

0.4.4 - 2014-11-27

  • 对数值稳定性进行了许多改进(但有些地方仍需努力)

  • 对CoxPHFitter中的summary的添加。

  • 使所有预测方法输出一个DataFrame

  • 修复了CoxPHFitter中一维输入不返回的错误

  • 许多新测试。

0.4.3 - 2014-07-23

  • 重构qth_survival_times:现在它可以在q参数中接受一个可迭代对象(或仍然是一个标量)的概率,并将返回一个DataFrame,这些概率作为列。如果len(q)==1并且给出了单个生存函数,将返回一个标量,而不是DataFrame。还有一些很好的速度改进。

  • KaplanMeierFitter 和 NelsonAalenFitter 现在有一个 _label 属性,该属性在拟合期间传入。

  • 如果在fit过程中传入了一个新的alpha值,KaplanMeierFitter/NelsonAalenFitter的初始alpha值将被覆盖。

  • KaplanMeierFitter的新方法:conditional_time_to。这 返回一个估计值的DataFrame:med(S(t | T>s)) - s,人类 可读的:估计的剩余生存时间,假设一个人 年龄为s。

  • 向CoxPHFitter的fit方法添加选项include_likelihood以保存最终的对数似然值。

0.4.2 - 2014-06-19

  • 对CoxPHFitter进行了大幅度的速度改进。

  • 额外的预测方法:predict_percentile 在 CoxPHFitter 和 AalenAdditiveFitter 上可用。给定一个百分位数 p,此函数返回一个值 t,使得 S(t | x) = p。它是 predict_median 的泛化。

  • k_fold_cross_validation中接受不同预测方法的额外kwargs(默认为predict_median)。

  • CoxPHFitter predict_expectation 函数中的错误修复。

  • 修正牛顿-拉夫森算法中的拼写错误。

  • datasets 现在包含用于生成相应数据集的函数,例如:generate_waltons_dataset

  • 增加统计测试中的样本数量,以防止它们经常失败(这是一个权宜之计)

  • pep8 一切

0.4.1.1

  • 能够使用suppress_print关键字参数(默认值为False)在统计测试中指定默认打印。

  • 对于多元对数秩检验,逆步骤已被广义逆所取代。这似乎是其他软件包所使用的方法。

  • 根据问题#67添加更强大的交叉验证方案。

  • 修复regression_datasetdatasets中。

0.4.1 - 2014-06-11

  • CoxFitter 现在被称为 CoxPHFitter

  • 重构一些使用了来自lifelines.datasets的冗余数据的测试。

  • 添加交叉验证:在utils中有一个新的k_fold_cross_validation用于回归问题中的模型选择。

  • 将CoxPHFitter的fit方法的display_output更改为False

  • 修复了CoxPHFitter的_compute_baseline_hazard中的一个错误,该错误在将Series对象发送到survival_table_from_events时出错。

  • CoxPHFitter的fit现在会检查方差过低的列,并在发现NaN时停止NR算法。

  • 添加变更日志。

  • 为统计测试进行更多的清理 =)

0.4.0 - 2014-06-08

  • CoxFitter 在 lifelines 中实现了 Cox 比例风险模型。

  • lifelines 推动了车轮分布。

  • statistics 模块中的测试现在会打印摘要(并且仍然返回常规值)

  • 新的 BaseFitter 类继承自所有拟合器。