问题标签 [lifelines]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
python - “生命线”中的 Cox PH 模型 - 违反了虚拟变量的假设
我正在使用lifelines
库来估计 Cox PH 模型。对于回归,我有许多分类特征,我对其进行一次热编码并删除每个特征一列,以避免多重共线性问题(虚拟变量陷阱)。我没有附上代码,因为示例可能与此处文档中给出的示例相似。
通过运行,cph.check_assumptions(data)
我收到每个虚拟变量都违反假设的信息:
我应该如何理解针对单个分类特征的多个虚拟变量的建议?我应该将它们全部添加到strata吗?
我将不胜感激任何评论:)
python - 如何修改 cph.plot_covariate_groups 绘制的 COXPH 图像的输出
我不知道如何修改生命线提供的输出图像,因为我不熟悉“cph.plot_covariate_groups”。不幸的是,这里的链接中似乎没有关于它的详细描述;https://lifelines.readthedocs.io/en/latest/Survival%20Regression.html。
我正在寻找的是,(1)如何缩短事件天数(X轴),我不想为生存曲线显示这么长的天数。理想情况下,4000 是最好的。(2) 另外,如果可能的话,我想从我的图像中删除基线生存曲线。(3) 我也希望能否将生存曲线的颜色从橙色/蓝色更改为其他颜色。
python - python 3.6 virtualenv - openblas 崩溃
我在 Win7 64 位上运行,并virtualenv
使用 Python 3.6 创建了一个。
首先,我从pypi
( numpy-1.16.2-cp36-cp36m-win_amd64
) 安装了最新的 numpy。但是,即使只是导入 numpy 也会导致python.exe
崩溃:
我找到了一个似乎适用于numpy
:的替代包numpy+mkl
。
但是我对生命线也有类似的问题,它也崩溃了libopenblas
,似乎没有其他选择。因此,理想情况下,我需要修复openblas
机器上的任何问题,但我发现关于这里可能出现问题的信息很少。
有没有人以前见过这种问题,或者知道如何解决这个问题?
python - 预测当前时间的生存概率
我用以下几行训练我的生存模型:
在此之后,我希望查看当前时间的生存概率(duration
列)。
如果使用以下 for 循环,我目前正在这样做的方式:
但是,考虑到我使用 for 循环(200k+ 行),这真的很慢。另一种方法是wft.predict_survival_function(test, test['duration'])
创建一个 200000x200000 矩阵,因为它会根据所有提供的时间检查每一行。
我只是想根据自己的持续时间检查生存概率。有lifelines
没有这样做的功能?
lifelines - 生存分析的持续时间上限
我有一个生命线模型,我使用以下内容进行拟合:
但是,它为我的测试集预测的持续时间非常大(通过使用predicted_time = model.predict_expectation(test)
)。事实上,在未经审查的情况下,测试持续时间和预测持续时间之间的平均误差为 2289.3773 +/- 7584.9916。
唯一的问题是最长可能的持续时间是 1500 年(假设机器每 5 年更换一次)。所以我的问题是:
- 有没有办法设置时间上限?
- 如果我将持续时间标准化为平均值为 0,标准差为 1,持续时间估计会改善吗?
python - 预测合同离散保单/条款的生存评分和 CLTV
我正在尝试预测 python 中合同和离散保单(保险)的生存分数和 LTV。我浏览了许多网站,但我只能找到许多非合同(零售)的例子。
我使用了以下代码:
其中 TIME - 是 ACTIVE 客户的保单生效日期和当前日期之间的天数,以及非 ACTIVE 客户的保单生效日期和退保日期之间的天数。
EVENT - 是客户是否活跃的指标。
拟合模型后,我得到了 0.7 的一致性(我觉得还可以)。
从这里开始,我如何继续获得活跃客户的生存分数和终身价值(CLTV)?基本上,我需要预测谁是有价值的客户,他们将长期留在公司。
我通过浏览 Cam 的一些帖子和建议添加了一些代码。
那么输出表示什么:
0.5 PREAMT TIME
--- 第 0.5 列中的数字是否表示有 50% 机会关闭的持续时间?
0.75 PREAMT TIME
--- 同样 0.75 表示有 75% 机会关闭的持续时间?
RemainingValue
--- 是要支付的剩余金额吗?
下一步是什么?
python-3.x - 是否可以在“生命线”或其他软件包中运行具有指数分布的 Cox-Proportional-Hazards-Model 基线危险?
我考虑使用该lifelines
软件包来适应Cox-Proportional-Hazards-Model。我读到lifelines 使用非参数方法来拟合基线 hazard,这会在某些时间点导致不同的 baseline_hazards (参见下面的代码示例)。对于我的应用程序,我需要一个
指数分布,导致基线危险 h0(t) = lambda随时间保持不变。
所以我的问题是:(同时)是否可以运行 Cox-Proportional-Hazards-Model,其基线危害lifelines
或其他 Python 包中的基线危害呈指数分布?
示例代码:
给
python - 加载生命线失败(结果显示:属性错误:模块'scipy.misc'没有属性'logsumexp')
我正在尝试运行生命线包,
结果证明
我知道 logsumexp 已从 scipy.misc 中删除并放置在 scipy.special 中。以前有人建议将 SciPy 降级到 1.1.0 版本。但是,如果我将代码从
至
如果可能的话,我可以知道如何修改代码吗?这段代码在 Scipy.misc 中还是在生命线中?
python - 生存分析生命线包中审查事件的持续时间
我正在使用python 中的生命线包,用于生存分析。当我为审查事件(在event_col上为 0 的事件)设置不同的duration_col值时,我得到不同的结果。
事实是,被审查的事件没有持续时间,所以理论上它不应该改变结果。
我应该为审查值的持续时间设置什么?
算法如何考虑正确的审查?
python - Python生命线包中Cox比例危险法和Weibull AFT模型的区别
我正在使用 Python 的生命线包进行生存分析。
https://lifelines.readthedocs.io/en/latest/Survival%20Regression.html
在读取 ATF 时;加速失效时间模型和 Cox Propositional Hazard 方法,我开始知道 AFT 模型在给出 2 个总体的相对失效时很有用,但是当我进一步阅读时,例如 AFT 仅用于单个总体。它与 CPHFitter(Cox Proportional Hazard Fitter) 有何不同?
当 AFT 示例中未给出相对加速故障率时,我无法弄清楚加速究竟是如何发生的 - (https://lifelines.readthedocs.io/en/latest/Survival%20Regression.html#the-weibull-船尾模型)