PyMC 3 中的生存分析

2023-11-24

我尝试移植简单的生存模型从这里(介绍中的第一个)从 PyMC 2 到 PyMC 3。但是,我没有找到任何与“观察到的”装饰器等效的东西,并且我尝试编写新发行版失败了。有人可以提供一个例子,这是如何在 PyMC 3 中完成的吗?


这是一个棘手的移植,需要三个新概念:

  1. 使用theano tensor
  2. 使用DensityDist
  3. 通过一个dict as observed

此代码提供与上面链接到的 PyMC2 版本等效的模型:

import pymc3 as pm
from pymc.examples import melanoma_data as data
import theano.tensor as t

times = data.t # not to be confused with the theano tensor t!
failure = (data.censored==0).astype(int)

with pm.Model() as model:

    beta0 = pm.Normal('beta0', mu=0.0, tau=0.0001)
    beta1 = pm.Normal('beta1', mu=0.0, tau=0.0001)
    lam = t.exp(beta0 + beta1*data.treat)

    def survival_like(failure, value):
        return t.sum(failure * t.log(lam) - lam * value)

    survive = pm.DensityDist('survive', survival_like,
                        observed={'failure': failure, 'value': times})

with model:

    start = pm.find_MAP()
    step = pm.NUTS(scaling=start)
    trace = pm.sample(10000, step=step, start=start)

pm.traceplot(trace);

输出如下:

enter image description here

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

PyMC 3 中的生存分析 的相关文章

  • 如何从 survfit 对象中提取值

    我创建了这个模型 model lt survfit Surv time status c sex model 输出是 Call survfit formula Surv time status c sex records n max n s
  • 使用“LKJCorr”先验修改 PyMC3 中的 BPMF:使用“NUTS”的 PositiveDefiniteError

    我之前实现了原来的贝叶斯概率矩阵分解 BPMF 模型中pymc3 看我之前的问题供参考 数据源和问题设置 根据 twiecki 对该问题的回答 我使用以下方法实现了该模型的变体LKJCorr相关矩阵的先验和标准差的统一先验 在原始模型中 协
  • PyMC 3 中的生存分析

    我尝试移植简单的生存模型从这里 介绍中的第一个 从 PyMC 2 到 PyMC 3 但是 我没有找到任何与 观察到的 装饰器等效的东西 并且我尝试编写新发行版失败了 有人可以提供一个例子 这是如何在 PyMC 3 中完成的吗 这是一个棘手的
  • 如何从 R 中的 survfit 中提取危险?

    我有一个survfit目的 我的生存总结t 0 50多年的兴趣是很容易的 summary survfit t 0 50 它给出了每个 t 的生存率 有没有办法获得每个 t 的危险 在本例中 每个 t 0 50 中从 t 1 到 t 的危险
  • pymc3:多个观察值

    我有一些观测数据想要估计参数 我认为这将是尝试 PYMC3 的好机会 我的数据由一系列记录构成 每条记录包含一对与固定的一小时时间段相关的观察结果 一项观察是给定一小时内发生的事件总数 另一个观察结果是该时间段内的成功数量 例如 一个数据点
  • 如何将 p 值表添加到生存图中?

    我有数据如下 library survival library survminer data aml aml x lt as character aml x aml 10 3 lt SuperMaintained aml 11 3 lt S
  • 用可变速率拟合上限泊松过程

    我正在尝试使用最大后验估计来估计泊松过程的速率 其中速率随时间变化 这是一个速率线性变化的简化示例 ax b import numpy as np import pymc Observation a actual 1 3 b actual
  • 使用包“cmprsk”在 R 中自定义竞争风险图

    我正在尝试使用 R 和包定制竞争风险图cmprsk 具体来说 我想覆盖默认情况 即对于竞争事件使用颜色 对于不同组使用线型 这是我的可重现的示例 library ggplot2 library cmprsk library survmine
  • 如何使用pymc参数化概率图模型?

    如何使用 pymc 参数化概率图形模型 假设我有一个带有两个节点的 PGMX and Y 可以说X gt Y是图表 And X有两个值 0 1 and Y也有两个值 0 1 我想使用 pymc 来学习分布的参数并填充 用于运行推理的图形模型
  • PyMC - 方差-协方差矩阵估计

    我读了下面的论文 http www3 stat sinica edu tw statistica oldpdf A10n416 pdf http www3 stat sinica edu tw statistica oldpdf A10n4
  • ggadjustedcurves survminer if (xi > xj) 1L else -1L 错误

    我正在尝试使用 survminer 通过 ggadjustedcurves 创建调整后的生存曲线 我的代码如下 adjustedcurve lt coxph Surv time DeathTxCensor deadORtx 1 strata
  • R coxph() 警告:Loglik 在变量之前收敛

    我在使用 coxph 时遇到一些问题 我有两个分类变量 性别和可能的原因 我想将其用作预测变量 性别只是典型的男性 女性 但可能的原因有 5 个选项 我不知道警告消息有什么问题 为什么置信区间从 0 到 Inf 并且 p 值如此高 这是代码
  • R 与 Stata 中的 Cox 比例风险模型

    我正在尝试使用以下数据在 R 中复制 Stata 的 cox 比例风险模型估计http iojournal org wp content uploads 2015 05 FortnaReplicationData dta http iojo
  • ggsurvplot - 轴交叉于 0,0

    Survminer产生不错的情节 但有没有办法进一步改变常规的结果ggplot 命令 我尝试做的是使 y 轴从原点开始 如上所述here https stackoverflow com questions 13701347 force th
  • R 中生存数据的左删失

    我想对左右删失的数据进行生存分析 Kaplan Meier 和 Cox PH 建模 我正在研究特定基因 基因 0 或 1 存在与不存在时发生心律失常 AF 的时间 然而 一些受试者在招募时被发现已经存在心律失常 因此应该进行审查 我已阅读生
  • 当 R 中的生存分析中违反比例假设时,如何对协变量与时间的相互作用进行建模

    在 R 中 当比例检验 使用 coxph 显示违反了 Cox 模型中的比例假设时 合并协变量和时间之间的交互项的最佳方法是什么 我知道您可以使用分层或与时间项交互 我对后者感兴趣 我无法在互联网上找到明确的解释以及如何执行此操作的示例 在使
  • 在 R 中获取生存估计

    我试图获得不同人在特定时间的生存估计 我的代码如下 s Surv outcome 1 outcome 2 survplot survfit s person list 1 plot survplot mark time FALSE summ
  • Python 中的随机优化

    我正在尝试结合cvxopt http cvxopt org 优化求解器 和PyMC https github com pymc devs pymc 采样器 解决凸问题随机优化问题 作为参考 安装这两个软件包pip很简单 pip instal
  • 删除缺失的数据值

    我删除了原始帖子 以便能够发布更大版本的数据集 实际上总共有 418 行 这是我正在进行的生存分析的数据 第一列是 ID 号 其他列标记为 V2 V20 有很多缺失的数据 用 表示 我用coxph 函数来获取以下内容 Saves survi
  • 绘制 Cox 回归的 Kaplan-Meier 图

    我使用 R 中的以下代码设置了一个 Cox 比例风险模型来预测死亡率 添加协变量 A B 和 C 只是为了避免混淆 即年龄 性别 种族 但我们真正对预测变量 X 感兴趣 X 是一个连续变量 cox model lt coxph Surv t

随机推荐

  • iOS WKWebView 不显示 javascriptalert() 对话框

    我在 iOS 8 中使用 WKWebView 显示从 Javascript 调用的警报对话框时遇到一些问题 创建标准 WKWebView 并加载 HTML 文件后 我在页面上有一个按钮 用于创建带有一些文本的简单警报 这适用于 UIWebV
  • 在C#(WinForms)中拦截应用程序中所有控件的点击事件

    我想创建一个应用程序来拦截应用程序所有形式的所有 UI 事件并将它们写入日志 然后可以使用这些数据来查看哪些控件最常用 按什么顺序等 问题是我希望这种情况自动发生 而不需要修改现有的类 我制作了一个原型 将一个方法附加到表单中所有控件的单击
  • 64 位 Win 上缺少 dll

    我有一个 net 应用程序 它使用一些 vc 编译的 Win32 dll 它在 32 位 Win 上运行良好 但在 64 位上存在问题 无法加载 DLL xyz 找不到指定的模块 HRESULT 异常 0x8007007E 使用depend
  • 在 Python 中的函数中使用嵌套函数内的全局变量

    我想知道为什么我的代码不起作用 我预计它会返回 11 但它创建了一个异常 def f counter 1 def f1 global counter counter 1 while True f1 if counter gt 10 retu
  • Delphi Win32 的最佳共享软件锁 [关闭]

    Closed 此问题正在寻求书籍 工具 软件库等的推荐 不满足堆栈溢出指南 目前不接受答案 与我上一个问题相同的介绍 我正在重写和 或合并一堆我的 应用程序框架 类 基本主窗体 关于框 锁定例程和购买链接 自动更新 数据模块初始化程序等 基
  • 在哪里可以获得 groovy-all-4.0.0.jar?

    我在哪里可以获取 下载 groovy all 4 0 0 jar 其中包含一个文件中所有重要的 Groovy 4 0 模块 类 到目前为止我只找到了一个pom文件 但我无法使用Maven https repo1 maven org mave
  • com.mysql.jdbc.exceptions.jdbc4.MySQLNonTransientConnectionException:在 mysql 中

    您好 我已经创建了 jdbc 程序 数据库是 MySQL 5 1 我所有的朋友也使用相同的数据库进行连接 我们所有人的联系总数变成了150个 所以当我想连接更多时我收到以下错误 com mysql jdbc exceptions jdbc4
  • WPF 根元素对于导航无效

    我正在将 WPF XBAP 应用程序转换为 WPF 桌面应用程序 我让它在桌面上运行 但现在尝试将页面引用更改为窗口引用 MyApp StartForm root element is not valid for navigation 我尝
  • 如何更改导航抽屉标题中 TextView 的文本?

    我想更改导航抽屉标题内 TextView 的文本 但我收到这个错误 java lang NullPointerException 尝试调用虚拟方法 void android widget TextView setText java lang
  • ASP.NET / C#:服务器控件中的 DropDownList SelectedIndexChanged 未触发

    我正在创建一个服务器控件 它基本上绑定两个下拉列表 一个用于国家 地区 一个用于州 并更新国家 地区的 selectedindexchanged 事件的州下拉列表 但是 它不会回发 有什么想法吗 将它们包装在 UpdatePanel 中的奖
  • strtotime() 被认为有害吗?

    似乎很多人都在为 PHP 中的日期 时间问题而苦苦挣扎 不可避免地 许多接受的答案往往是 Use strtotime这样 这真的是指导人们处理约会问题的最佳方式吗 我开始觉得strtotime是一种巧妙的技巧 不一定依赖于重要的日期 时间计
  • 实时 PL/SQL 输出

    是否可以实时获得 PL SQL 的输出 我有一个相当大的包裹 运行了一个多小时 我想看看该包裹在特定时间在哪里 无论如何 我目前使用一个日志表来执行此操作 每次运行该表都会填充数百个日志描述 我只是好奇这是否可能 Thanks 这就是我使用
  • 在大括号和管道中对命令进行分组不会保留变量

    说我有一个文件myfile在我当前的工作目录中 如果命令正常执行 我想设置一个变量 但也使用它的结果 ls myfile v 3 myfile echo v 3 但现在我也想通过管道传输结果 所以我使用 list 对命令进行分组的语法 un
  • 响应式设计:不同屏幕尺寸显示不同图像

    我们的客户希望在小屏幕上与大屏幕上有不同的横幅图像 不仅仅是收缩 拉伸以适应 而且实际上替换了不同的图像 全尺寸图像相当复杂 几个人 两个徽标和一些装饰文本 因此对于较小的图像 他们想要裁剪掉一些人 删除徽标等 所以他们想要最大的 最复杂的
  • 为什么带有两个常量的三元运算符比带有变量的三元运算符更快?

    在Java中 我有两个不同的语句 通过使用三元运算符来实现相同的结果 如下所示 num lt 0 0 num num num lt 0 0 1 看来第二条语句不必要地复杂 并且比第一条语句花费的时间更长 但是当我使用以下代码记录每个语句所花
  • Pandas 分割并选择第二个元素

    我有一个像这样的数据框 item id 26 23 24 65 12 24 54 24 66 23 当我说 df item id df item id map lambda x x split 0 I get item id 26 24 1
  • 在活动之间导航时重置运动布局

    我在我的主要活动中使用运动布局 它工作正常 但是 当我移至其他活动并导航回主活动时 有时活动会重置并且布局处于起始状态 如何防止这种情况发生 除此之外 我还有另一个关于运动布局的问题here 我所做的是添加一个字段 具体来说是一个布尔字段
  • 设置十六进制和十进制颜色的行为不同

    我试图通过以下方式设置橙色 WorkSheet Range A1 A5 Interior color 49407 and WorkSheet Range A1 A5 Interior color HC0FF Hex value of 494
  • 如何将 SelectManyCheckbox 与两个 ArrayList 一起使用? - Primefaces

    我正在尝试实现一个
  • PyMC 3 中的生存分析

    我尝试移植简单的生存模型从这里 介绍中的第一个 从 PyMC 2 到 PyMC 3 但是 我没有找到任何与 观察到的 装饰器等效的东西 并且我尝试编写新发行版失败了 有人可以提供一个例子 这是如何在 PyMC 3 中完成的吗 这是一个棘手的