如何绘制survreg(R的包生存)生成的生存曲线?

2024-01-13

我正在尝试根据生存数据拟合并绘制威布尔模型。该数据只有一个协变量,即从 2006 年到 2010 年运行的队列。那么,对于在后面的两行代码中添加什么来绘制 2010 年队列的生存曲线,有什么想法吗?

library(survival)
s <- Surv(subSetCdm$dur,subSetCdm$event)
sWei <- survreg(s ~ cohort,dist='weibull',data=subSetCdm)

使用 Cox PH 模型完成同样的任务相当简单,只需执行以下几行代码。问题是 survfit() 不接受 survreg 类型的对象。

sCox <- coxph(s ~ cohort,data=subSetCdm)
cohort <- factor(c(2010),levels=2006:2010)
sfCox <- survfit(sCox,newdata=data.frame(cohort))
plot(sfCox,col='green')

使用数据肺(来自生存包),这就是我想要完成的任务。

#create a Surv object
s <- with(lung,Surv(time,status))

#plot kaplan-meier estimate, per sex
fKM <- survfit(s ~ sex,data=lung)
plot(fKM)

#plot Cox PH survival curves, per sex
sCox <- coxph(s ~ as.factor(sex),data=lung)
lines(survfit(sCox,newdata=data.frame(sex=1)),col='green')
lines(survfit(sCox,newdata=data.frame(sex=2)),col='green')

#plot weibull survival curves, per sex, DOES NOT RUN
sWei <- survreg(s ~ as.factor(sex),dist='weibull',data=lung)
lines(survfit(sWei,newdata=data.frame(sex=1)),col='red')
lines(survfit(sWei,newdata=data.frame(sex=2)),col='red')

希望这对您有所帮助,并且我没有犯一些误导性的错误:

从上面复制:

    #create a Surv object
    s <- with(lung,Surv(time,status))

    #plot kaplan-meier estimate, per sex
    fKM <- survfit(s ~ sex,data=lung)
    plot(fKM)

    #plot Cox PH survival curves, per sex
    sCox <- coxph(s ~ as.factor(sex),data=lung)
    lines(survfit(sCox,newdata=data.frame(sex=1)),col='green')
    lines(survfit(sCox,newdata=data.frame(sex=2)),col='green')

对于威布尔,使用预测,重新引用文森特的评论:

    #plot weibull survival curves, per sex,
    sWei <- survreg(s ~ as.factor(sex),dist='weibull',data=lung)

    lines(predict(sWei, newdata=list(sex=1),type="quantile",p=seq(.01,.99,by=.01)),seq(.99,.01,by=-.01),col="red")
    lines(predict(sWei, newdata=list(sex=2),type="quantile",p=seq(.01,.99,by=.01)),seq(.99,.01,by=-.01),col="red")

这里的技巧是颠倒绘图与预测的分位数顺序。可能有更好的方法来做到这一点,但它在这里有效。祝你好运!

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

如何绘制survreg(R的包生存)生成的生存曲线? 的相关文章

  • 闪亮应用程序中的本地图像没有 img(src())?

    我想按照以下说明在我的闪亮应用程序中包含本地图像文件 在闪亮的应用程序中嵌入图像 https stackoverflow com questions 21996887 embedding image in shiny app 然而 由于某种
  • 从 csv 文件中读取奇数行

    这看起来相当简单 我只需要从 R 中的数据文件中读取奇数行并创建一个新的数据框 我怎样才能实现这个目标 read csv filename csv c TRUE FALSE 怎么运行的 功能read csv用于读取整个文件并返回包含所有行的
  • 在 R 中绘制逻辑回归的两条曲线

    我正在 R glm 中运行逻辑回归 然后我设法绘制结果 我的代码如下 temperature glm glm Response Temperature data mydata family binomial plot mydata Temp
  • 使用 geom_tile() 的 R ggplot 热图:如何按年份排序并在 y 轴上显示所有年份?

    在研究了哈德利的书并在这里搜索后 我创建了一个由年和月矩阵组成的热图 颜色根据时间序列变量的百分比变化而变化 热图和我用来获取它的代码如下所示 我还有一些我自己无法解决的问题 1 如何对矩阵进行排序 排序 以便 y 轴中的年份从最早到最晚
  • 将数字提高到非整数幂时出现奇怪的 NaN [重复]

    这个问题在这里已经有答案了 我执行了以下代码 tau lt 0 25 h lt 0 6 n 1 5 4 5 dnorm qnorm tau 4 qnorm tau 2 qnorm tau 2 1 2 1 5 R 继续生产NaN 然而 R 实
  • R:大向量的高效迭代子集和过滤

    我想更快地执行以下操作 Logic 我有一个向量big共 4 个元素1 2 3 4 我还有一个相同长度的阈值向量1 1 3 1 4 1 5 1 我希望每个元素找到第一个元素的索引next元素高于相应的阈值 在这种情况下 我的预期输出是 2
  • dplyr / left_join 中的嵌套管链

    在尝试获取分组滞后变量的过程中 仅使用这是不可能的 lag 建议的解决方案是将数据拉出 滞后不同的行 然后重新加入它 我更喜欢在不创建中间对象的情况下执行此操作 并且希望在链中间执行此操作 然而 它似乎没有像我预期的那样工作 问题似乎是使用
  • 查找嵌套列表中元素的索引?

    我有一个类似的列表 mylist lt list a 1 b list A 1 B 2 c list C 1 D 3 是否有一种 无循环 方法来识别元素的位置 例如如果我想用 5 替换 C 的值 并且在哪里找到元素 C 并不重要 我可以这样
  • 在 Shiny 中设置一个绘图缩放以匹配另一个绘图缩放

    我正在尝试使用情节重排获取一个图的 x 轴缩放限制 并将它们应用到 Shiny 中的另一个图 到目前为止 我可以从 plot1 x轴限制 获取相关的plotly relayout数据 将其转换 从数字到日期 并在绘制 plot2 之前将其提
  • 如何使用 r 中的 caret 包在最佳调整超参数的 10 倍交叉验证中获得每次折叠的预测?

    我试图使用 R 中的插入符包使用 10 倍交叉验证和 3 次重复来运行 SVM 模型 我想使用最佳调整的超参数获得每次折叠的预测结果 我正在使用以下代码 Load packages library mlbench library caret
  • R从列表中提取数据框,列名中没有前缀

    我在列表中放置了一个数据框 然后 当尝试将其提取回来时 我得到了该数据帧的所有以列表键为前缀的列名称 有没有办法完全按照最初传递的方式提取数据帧 cols lt c column1 Column2 Column3 df1 lt data f
  • 将 JSON URL 转换为 R 数据帧

    我在将 JSON 文件 从 API 转换为 R 中的数据帧时遇到问题 例如 URL 我尝试了 S O 的一些不同建议 包括将json数据转换为R中的数据框 https stackoverflow com questions 28683769
  • 从 python 中的动态 mpld3 图中检索数据

    我想更新用于创建 mpld3 生成的 python matplotlib 列表图的输入数据 实际上 我有与此处发布的相同的问题 拖动后获取点信息 https stackoverflow com questions 24498322 mpld
  • dplyr,do(),从模型中提取参数而不丢失分组变量

    R 帮助中关于 do 的示例略有不同 by cyl lt group by mtcars cyl models lt by cyl gt do mod lm mpg disp data coefficients lt models gt d
  • 使用 dplyr:group_by 将数据帧分成多个子集?

    有没有办法根据 group by 组使用 dplyr 将一个数据帧拆分为数据帧的子集 mtcars gt group by cyl gear gt codes 非常感谢 好吧 并不是你真的想要 但你可以这样做tidyr 即nearly一样的
  • 限制数据框中所有单元格的字符串长度?

    您好 有没有一种方法可以限制 data frame 中所有列的字符串文本大小 而不必循环遍历每一列并一次使用 str trunc 之类的东西 例如下面的数据框 我可以将所有文本大小限制为仅 5 个字符 而不必一次只执行一列吗 如果有 50
  • R 中的发散积分可在 Wolfram 中求解

    我知道我以前问过同样的问题 但由于我是新来的 这个问题问得不好而且不可重现 因此我在这里尝试做得更好 如果我只编辑旧的 可能没有人会读它 我有一个想要积分的二重积分 ff lt function g t exp 16 g exp 8 t t
  • 如何获得属于五分位数的x?

    我正在大学学习使用 R 进行计量经济学项目 所以请原谅我的笨拙 基本上 使用并给出 一个矩阵 股票价格 行 天 列 公司股票价格 另一个矩阵 市值 行 天 列 公司市值 我必须收集第三个矩阵每天观察的属于市值分布第一五分位数的股票价格 然后
  • R.matlab/readMat:readTag(this) 中出错

    我正在尝试使用 R matlab 将 matlab 文件读入 R 但遇到此错误 require R matlab r lt readMat file mat verbose T Trying to read MAT v5 file stre
  • 在另一个 Rmd 中运行选定的块

    我已经在源 Rmd 文件中运行了分析 并且希望仅使用few来自源的块 我已经看到了一些关于从源 Rmd 中提取所有块的答案来自另一个 Rmd 中的 Rmd 文件的源代码 https stackoverflow com questions 4

随机推荐

  • TestNG:如何获取当前执行的组

    有没有办法获取当前正在执行的组的名称 I tried BeforeMethod public void beforeMethod ITestContext context groups context getCurrentXmlTest g
  • 将数据从视图传递到控制器

    在 ASP NET MVC 应用程序中 我正在为管理员制定接受或拒绝新成员的逻辑 我显示了成员列表和两个按钮 接受 和 拒绝 如下所示 tr td Username td td tr td Firstname td td etc tr td
  • 使用新的 MediaCodec 库在 Android 上进行视频压缩

    在我的应用程序中 我尝试上传用户从图库中选择的一些视频 问题是 通常 Android 视频文件太大而无法上传 因此我们希望首先通过较低的比特率 分辨率来压缩它们 我刚刚听说新的媒体编解码器 http developer android co
  • 在处理 HTML 表单时显示 jQuery 对话框 onSubmit

    我有一个 HTML 表单 允许用户添加最多 X MB 的附件 由于用户的连接速度各不相同 我想显示一个对话框 其中显示 您的请求正在处理 请勿离开此页面 成功提交表单后 此对话框将关闭 不是逐字逐句 但类似 该表单会发送给自身并使用 PHP
  • Eclipse:有没有办法让 Eclipse 输出运行程序的命令?

    我在 Eclipse 中遇到了一些构建问题 因为它在 Eclipse 中运行我的应用程序运行得很好 但由于某种原因 当尝试使用 gt java MyClass 由于找不到该类 它最终无法运行 这没有任何意义 所以我想知道是否有一种方法可以让
  • 错误“必需:找到字符串:字符串?” Kotlin 和 Android Studio

    正如标题所示 我在 var myNote Note id title note ServerValue TIMESTAMP 行的 id 下出现红色下划线 错误 必需 找到字符串 字符串 Kotlin 和 Android Studio cla
  • 从浏览器中的udp端口读取

    除了 Java Applet 之外 我们还有什么可以从 UDP 套接字读取数据的方法吗 我知道 websockets 是 TCP 套接字 但我需要通过 udp 套接字 HTML5 中的任何东西或任何东西与服务器通信 我从以下位置查看了这篇文
  • Angular2 限制模板驱动输入字段中的空白

    前言 我并不想使用反应形式 限制 Angular2 中空白的正确方法是什么 我懂了this https stackoverflow com questions 27322826 angular restriction to not allo
  • FirebaseInstanceIdService 已弃用

    希望大家都知道这个类 用于在 firebase 通知令牌刷新时获取通知令牌 我们从此类中获取刷新的令牌 通过以下方法 Override public void onTokenRefresh Get updated InstanceID to
  • OCaml 中的“Eval”字符串

    我正在尝试 评估 表示 OCaml 中的 OCaml 表达式的字符串 我想做一些与 Python 类似的事情eval https docs python org 3 library functions html eval 到目前为止我还没有
  • 为什么相同的Python代码有不同的时钟时间?

    我正在使用以下 python 代码对我的服务器进行基准测试 import time initial clock time clock res 0 for i in range 1 10000000 res i i print time cl
  • 无法绑定到具有嵌套(匿名)类型的 pyxb 类

    我按照以下指示进行操作这个线程 https stackoverflow com questions 17584287 unable binding to pyxb classes with nested anonymous types 并从
  • 使用 Zlib for gzip 压缩 ruby​​ 中的大文件

    我有一个非常大的文件 大约 2亿行数据 我想用 Zlib 库来压缩它 特别是使用 Writer 一次一页地阅读每一行似乎需要相当多的时间 有更好的方法来实现这一点吗 这是我现在所拥有的 require zlib Zlib GzipWrite
  • 如果文件不存在,如何激活 Maven 配置文件?

    我使用的是 Maven 3 2 3 如果文件系统上不存在文件 如何激活配置文件 我尝试过以下方法 但发现
  • VS2010 编辑样式表 - 操作无法完成。未指定的错误

    最近我注意到 当我使用 VS2010 创建 Web 应用程序并向解决方案添加样式表时 我无法使用 vs2010 默认 css 编辑器打开样式表 我尝试进行修复 但没有效果 回想起来 问题是在我加载 HTML 5 标准补丁的时候开始的 有关如
  • 如何获取与另一个像素成一定角度的像素值?

    我正在尝试实现一种方法 其中我必须获取所有这些像素的值 这些像素通过像素 i j 以一定角度形成一条线 考虑以下代码片段 sum image getpixel i 7 j 2 image getpixel i 6 j 2 image get
  • 递归二叉搜索树插入

    这是我的第一个 java 程序 但我已经使用 c 几年了 我写了我认为应该有效的内容 但实际上却无效 所以我有一个规定 必须为这个调用编写一个方法 tree insertNode value 其中 value 是一个 int 出于显而易见的
  • 从隔离函数调用异步函数

    我正在尝试从 Isolate 函数调用异步函数 class IsolateExample final ReceivePort port new ReceivePort IsolateExample Isolate spawn isolate
  • 如何在 laravel dompdf 中自定义字体和页面?

    我从这里得到 https github com barryvdh laravel dompdf https github com barryvdh laravel dompdf 我的控制器是这样的 public function listd
  • 如何绘制survreg(R的包生存)生成的生存曲线?

    我正在尝试根据生存数据拟合并绘制威布尔模型 该数据只有一个协变量 即从 2006 年到 2010 年运行的队列 那么 对于在后面的两行代码中添加什么来绘制 2010 年队列的生存曲线 有什么想法吗 library survival s lt