问题标签 [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.

0 投票
1 回答
351 浏览

python - 在 Google Colab 中安装 scikit-survival 时出现问题

我在 Google Colaboratory 中安装 scikit-survival 时遇到问题。每次都说:

但是,我没有得到错误。我已经安装了最新的 Python 版本,并且任何其他 pip install 命令都可以使用。有人有想法吗?

亲切的问候,哈希利亚马

0 投票
0 回答
63 浏览

python - 为什么具有多个元素的python数组的真值是模棱两可的?

我有两个问题。首先,我想绘制预测的生存函数图。代码如下:

当我想绘制结果时:

我收到以下错误:

我怎么解决这个问题?

第二个问题是,如何将对象pred_surv的结果传输到数据帧?

0 投票
0 回答
37 浏览

python - 如何解释 scikit-survial 的结果?

我在 python 中使用 scikit-survival 库通过 cox 用 lasso 进行生存分析,我使用的函数是 coxnetSurvivalAnalysis,描述​​附在此处(https://scikit-survival.readthedocs.io/en/latest/api /生成/sksurv.linear_model.CoxnetSurvivalAnalysis.html)。当我用函数拟合我的数据时,有一个名为 score 的函数,它返回估计的 c 统计量。但是当我对 alpha 进行交叉验证和网格搜索时,c 统计量下降了大约 7%。谁能告诉我这些可能性?

非常感谢。

0 投票
0 回答
19 浏览

python - Kaplan Meier 估计器无法正常工作

我正在尝试为现场数据运行生存曲线,结果曲线显然不正确。在最后一次现场评估中,幸存者应该是这样的:

犹他州:0.5505464480874317

里奇克莱斯特:0.10817941952506596

仙人掌矿:0.22146739130434784

阿马戈萨:0.005361930294906166

这是我用来生成上述数字的代码:

period 是评估栏,dummy 是我的alive/dead 虚拟栏

然而,图表显示犹他州是最差的地点,而阿马戈萨是最好的: 所有花园在 5 个评估期的生存曲线

我尝试使用 scikit 包和 lifelines 包生成此图,并且都给出了相同的结果。我究竟做错了什么?

scikit 代码:

生命线代码:

和生命线总数据生存曲线,由于某种原因,在最后一次评估中生存率为 0。

生命线生存曲线

0 投票
0 回答
106 浏览

python - sklearn 的 GridSearchCV 的综合 Brier 分数

我有一个自定义scorer函数,其输入取决于特定的训练和验证折叠,此外,.predict_survival_function还需要估计器的输出。举一个更具体的例子:

我正在尝试使用综合 Brier 分数(IBS)作为方法GridSearch运行随机生存森林scikit-survival包)。挑战在于 IBS 的域是数据特定的(因此是折叠的),因为它在某些时候依赖于 Kaplan-Meyer 估计。此外,在评分评估步骤期间每次都需要调用该方法,而不仅仅是在结束时调用。scoring.predict_survival_function

看来我设法通过创建以下函数来处理第一个问题:

这足够强大,可以在所有折叠中工作。但是,我无法网格搜索阶段检索估计器的预测,因为每次调用自定义记分器函数时,它的未拟合副本似乎都会传递。II 尝试的解决方法是在评分函数中重新拟合估计器,但这不仅在概念上是错误的,而且还会引发错误。

自定义记分器函数如下所示:

scoring然后我立即创建对象:

有什么建议么?能够将 GridSearch 与更复杂的评分功能一起使用会很棒,尤其是对于生存分析案例!

PS。我将在此处粘贴其余的最小工作代码:

0 投票
1 回答
45 浏览

python - 将估计器从 Scikit Learn Pipeline 传递到 Scikit Survival as_concordance_index_ipcw_scorer

我有一个运行预处理的管道,然后是来自 SciKit-Survival 包的随机生存森林。我正在尝试使用此处找到的 Scikit-Survival 的 as_concordance_index_ipcw_scorer()

我的管道如下所示:

这是导致管道和管道安装的python代码:

拟合完成后,我尝试运行以下命令:

之后我收到以下错误:

我尝试过的一个选项是指定管道的 RSF 部分,但没有成功:

有什么建议么?

对长度或缺少信息表示歉意,我是管道和 ScikitSurvival 的新手,想提供尽可能多的细节。

谢谢

0 投票
2 回答
245 浏览

python-3.x - 无法在 pip 上运行 MSBuild 命令

我正在 Python 中安装 scikit-survival 包。当我跑

我在 msbuild 上收到错误,我在下面附上了感兴趣的元素:

问题在于 MSbuild.exe。你知道怎么解决吗?我已经安装了带有 Python 扩展的 Visual Studio Community 和 Visual Studio Build Tools。

0 投票
0 回答
19 浏览

machine-learning - 序数和单热编码后的标准缩放

我有一个带有名义(不可排序的类别)、有序(可排序的类别)和连续/数值变量的数据集。我正在使用 Python 中的 scikit-survival 包执行 Cox Proportional Hazard Regression。

我对名义变量进行了一次热编码(值是 0 和 1)。我已经对序数变量进行了序数编码(值范围从 0 到 9)。我对我的数值变量进行了标准缩放(平均值 = 0,标准偏差 = 1)。

我是否需要标准缩放我的内编码名义和有序变量。

我找到了对相关问题的回应:

  1. https://stats.stackexchange.com/questions/263867/is-the-coefficient-from-cox-regression-scale-invariant
  2. https://stats.stackexchange.com/questions/291264/what-c​​ould-be-the-reasons-for-why-re-scaling-variables-used-in-regression-helps
  3. https://www.dataschool.io/comparing-supervised-learning-algorithms/

我在参考文献 3 中看到,除非有正则化,否则线性和逻辑回归模型不需要特征缩放。我想 CoxPH 回归也是如此,不是吗?在参考文献 2 中,似乎需要进行特征缩放。