小编Noa*_*oah的帖子

如何用pymc3(威布尔分布回归)进行简单的生存分析?

我是 pymc3 的新手,我读过《黑客贝叶斯方法》,并尽最大努力完成 pymc3 中现有的生存分析教程。但是,我不明白如何编写/解释“生存函数”。

对于这个问题,我从 NIST 定义的威布尔分布生成了一些虚拟数据:

n = 1000
alpha = 1 
gam = 0.5
mu = 0
noise = np.random.normal(0, 0.025, [n, 1])

x = np.random.rand(n, 1)*10
f_x = (gam/alpha)*(((gam-mu)/alpha)**(gam-1))*np.exp(-((x-mu)/alpha)**gam)
y = f_x + noise
Run Code Online (Sandbox Code Playgroud)

由于我想创建一个包含审查数据和未经审查数据的模型,例如贝叶斯参数化的 pymc3教程,因此我实现了截止并审查了这些数据点:

cens = np.array([1 if k < 7.5 else 0 for k in x])
Run Code Online (Sandbox Code Playgroud)

然后我开始根据先验建立我的模型:

with pm.Model() as survival_model:

     alpha0 = pm.Normal('alpha0', mu=1, sigma = 1)
     gam0 = pm.Normal('gam0', mu=0.5, sigma = 1)
     mu0 = pm.Normal('mu0', mu=0.0, …
Run Code Online (Sandbox Code Playgroud)

python survival-analysis pymc weibull pymc3

5
推荐指数
1
解决办法
606
查看次数

标签 统计

pymc ×1

pymc3 ×1

python ×1

survival-analysis ×1

weibull ×1