问题标签 [scikit-survival]
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 - 如何从 python 中拟合的 scikit-survival 模型解释 .predict() 的输出?
我很困惑如何解释scikit-survival 中.predict
拟合模型的输出。CoxnetSurvivalAnalysis
我已经阅读了scikit-survival 中的笔记本 Intro to Survival Analysis和 API 参考,但找不到解释。以下是导致我困惑的一个最小示例:
所以这是进入模型的X:
...继续拟合模型并生成预测:
preds
具有与 相同数量的记录X
,但它们的值与 中的值完全不同data_y
,即使在它们拟合的相同数据上进行预测时也是如此。
输出:
那么究竟是preds
什么?显然.predict
,这里的含义与 scikit-learn 中的完全不同,但我不知道是什么。API 参考说它返回“预测的决策函数”,但这是什么意思?以及如何在yhat
给定的几个月内达到预测的估计值X
?我是生存分析的新手,所以我显然遗漏了一些东西。
machine-learning - 如何处理审查实例?
我正在开展一个项目,使用机器学习方法和包含大约 900 个变量的数据集来预测事件(移植失败)的日期,我是这个领域的新手,我不确定我是否走在正确的轨道上。
起初,我使用神经网络在 python 中使用 Keras 库进行预测,然后我发现我的数据中有 70% 的审查实例(Y 变量)。但是,除了 Y 之外,我还有一个后续变量。所以,我得出结论,我不应该使用神经网络来解决这类问题,而且我必须事先处理审查数据。现在我有三个问题:
1)有这样的审查数据率是否正常?我们应该如何处理这种情况?
2) 我的结论是否正确,即神经网络不是解决我的问题的最佳方案?如果不是,最常见的机器学习方法是什么?我为此目的找到了生命线和 scikit-survival 包,但我不知道哪个更好,它是正确的解决方案。
3)我用后续变量替换了审查数据,而根据我的数据集中审查数据的高比例,我认为它不合适。我意识到我应该使用另一种方法,如校准,但我找不到执行此操作的 python 库。你能帮我解决这个问题吗?Pyhton 中通常用于校准什么?
pyasn1 - 无法安装 scikit-survival 软件包。得到一个 Pyasn1 错误和一个“dill”错误
我一直在尝试安装 scikit-survival 包以进行生存分析,但每当我尝试这样做时,我都会收到如下所示的错误。
错误
pyasn1-modules 0.1.5 has requirement pyasn1<0.4.0,>=0.3.4, but you'll have pyasn1 0.1.9 which is incompatible.
错误
python - 计算 scikit-survival 中系数的置信区间
我正在使用 scikit-survival 在 python 中尝试 Cox 比例风险,我想知道是否可以计算对数风险系数的标准误差或置信区间?
Python 代码(大部分来自 github 上的教程 - https://nbviewer.jupyter.org/github/sebp/scikit-survival/blob/master/examples/00-introduction.ipynb):
输出
如果我使用生存库在 R 中运行相同的分析:
这是输出:
系数是相同的,但我真的想要一种计算标准误差(在 R 输出中标记为 se(coef))或每个系数的置信区间的方法。
非常感谢!
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
--- 是要支付的剩余金额吗?
下一步是什么?
r - simsurv R 功能:有没有办法定义不同的审查率?
我正在尝试生成一些模拟的生存数据集。我选择了 simsurv 函数,因为它允许我生成时变系数(因此是非比例风险)。但是,我该如何为不同的数据集定义不同的审查率(10%、30%...等)?
python - 如何在python中绘制生存树
我在 sksurv 中使用生存树开发了生存树。
当我做 getstate 时,我得到以下信息
但是当我使用 tree.plot_tree 时,我收到一条错误消息,说明如下:
AttributeError:“SurvivalTree”对象没有属性“标准”
我也尝试了 graphviz 并得到了同样的错误。
所以基本上我希望绘制生存树以便更好地解释。
python - 生存分析:concordance_index_censored 的参数(scikit-survival)
我想使用我训练的模型在我的测试集上实现 concordance_index_censored。我不明白哪个应该是我estimate
对concordance_index_censored()
.
它在coxnet_pred的某个地方吗?如果没有,我应该从哪里得到它?我试过coxnet_pred['array']但这不起作用,因为它包含步进函数。
代码如下
python - 如何使用决策树进行生存分析?
我在理解和在 Python 中应用决策树进行生存分析时遇到问题。我有一个数据集,其中包含变量年龄、体重、肿瘤大小、体积……(所有浮点数),我想知道是否与总体存活率相关(也是浮点数)。
但是我该如何应用决策树呢?在文献中,我只看到了 y_train 必须是分类变量(例如 0 或 1,良性或恶性,...)的示例,但它不适用于浮点数等连续变量。
但是,我想创建一个决策树,以便最终您可以发现肿瘤大小 > xx 且体积 > yy,您的预测总生存期约为 < zzz。
有人可以帮我解决我的问题吗?有谁知道在哪里可以阅读有关此主题的更多信息?