G:\r\tcga_example-master\scripts 生存分析 tcgaexample jimmy

news/2024/5/14 13:06:33/文章来源:https://blog.csdn.net/qq_52813185/article/details/127109411

G:\r\tcga_example-master\scripts

library(survival)
library(survminer)## 批量生存分析 使用 coxph 回归方法
# http://www.sthda.com/english/wiki/cox-proportional-hazards-model
colnames(phe)
head(phe)     #event中1 表示存活(终点事件)
#https://rpubs.com/kaz_yos/survival-auc
mySurv=with(phe,Surv(time, event))    # ## Create a survival vector
head(mySurv)      #surv的结果只是一列一连串的生存时间汇总。所以一般会提倡用phe$mysurv这种方式把结果整合到原始数据框中便于之后的分析
#生存曲线与结果汇总

在这里插入图片描述

ggsurvplot(survfit(mySurv ~ 1, data = phe))

在这里插入图片描述

ggsurvplot(survfit(mySurv ~ age_group, data = phe),  label.curves = list(method = "arrow", cex = 1.2))

在这里插入图片描述

library(survival)
data(pbc)
pbc <- within(pbc, {## transplant (1) and death (2) are considered events, and marked 1event <- as.numeric(status %in% c(1,2))## Create a survival vectorSurv <- Surv(time, event)
})
head(pbc)

在这里插入图片描述

ggsurvplot(survfit(Surv ~ sex, data = pbc),                        label.curves = list(method = "arrow", cex = 1.2))

在这里插入图片描述

ggsurvplot(survfit(Surv ~ albumin >= median(albumin), data = pbc), label.curves = list(method = "arrow", cex = 1.2))

在这里插入图片描述

对五百多个miRNA基因进行批量运行cox,需要一点点时间。

如果是mRNA-seq的表达矩阵, 通常耗时更长。

注意,如果是某些基因表达量为恒定,比如在所有样本为0,这个代码会爆仓

需要去除这样的基因,没有分析的必要性。

exprSet[1:3,1:3]

#https://zhuanlan.zhihu.com/p/130316068

cox_results <-apply(exprSet , 1 , function(gene){

gene= exprSet[1,]

group=ifelse(gene>median(gene),‘high’,‘low’)
survival_dat <- data.frame(group=group,stage=phestage,age=phestage,age=phestage,age=pheage, #新建存活矩阵,试图阐明某个基因的高低表达对生存率的影响
gender=phe$gender,
stringsAsFactors = F)
m=coxph(mySurv ~ gender + age + stage+ group, data = survival_dat) #矫正其他因素

beta <- coef(m)
se <- sqrt(diag(vcov(m)))
HR <- exp(beta)
HRse <- HR * se

#summary(m)
tmp <- round(cbind(coef = beta, se = se, z = beta/se, p = 1 - pchisq((beta/se)^2, 1),
HR = HR, HRse = HRse,
HRz = (HR - 1) / HRse, HRp = 1 - pchisq(((HR - 1)/HRse)^2, 1),
HRCILL = exp(beta - qnorm(.975, 0, 1) * se),
HRCIUL = exp(beta + qnorm(.975, 0, 1) * se)), 3)
return(tmp[‘grouplow’,])

})
cox_results=t(cox_results)
head(cox_results)
table(cox_results[,4]<0.05)
cox_results[cox_results[,4]<0.05,] #coxph 回归方法得到p<0.05的所有miRNA, 接下来与logrank test 得到的结果对比一下

批量生存分析 使用 logrank test 方法

mySurv=with(phe,Surv(time, event))
log_rank_p <- apply(exprSet , 1 , function(gene){

gene=exprSet[1,]

phegroup=ifelse(gene>median(gene),′high′,′low′)data.survdiff=survdiff(mySurvgroup,data=phe)p.val=1−pchisq(data.survdiffgroup=ifelse(gene>median(gene),'high','low') data.survdiff=survdiff(mySurv~group,data=phe) p.val = 1 - pchisq(data.survdiffgroup=ifelse(gene>median(gene),high,low)data.survdiff=survdiff(mySurv group,data=phe)p.val=1pchisq(data.survdiffchisq, length(data.survdiff$n) - 1)
return(p.val)
})

require(“VennDiagram”)
VENN.LIST=list(cox=rownames(cox_results[cox_results[,4]<0.05,]),#coxph 回归方法得到p<0.05的所有miRNA
log=names(log_rank_p[log_rank_p<0.05])) #logrank test 得到的p<0.05的所有miRNA
venn.plot <- venn.diagram(VENN.LIST , NULL,
fill=c(“darkmagenta”, “darkblue”),
alpha=c(0.5,0.5), cex = 2,
cat.fontface=4,
main=“overlap of coxph and log-rank test”)

可以看到两种生存分析挑出来的基因重合度尚可。

grid.draw(venn.plot)

save(log_rank_p,cox_results ,
file =
file.path(Rdata_dir,‘TCGA-KIRC-miRNA-survival_results.Rdata’)
)

可以看到,文章里面挑选出来的生存分析相关的miRNA基因,在我们的分析里面都是显著的。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.luyixian.cn/news_show_15973.aspx

如若内容造成侵权/违法违规/事实不符,请联系dt猫网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

15Spring Boot整合MyBatis

MyBatis 是一个半自动化的 ORM 框架&#xff0c;所谓半自动化是指 MyBatis 只支持将数据库查出的数据映射到 POJO 实体类上&#xff0c;而实体到数据库的映射则需要我们自己编写 SQL 语句实现&#xff0c;相较于Hibernate 这种完全自动化的框架&#xff0c;Mybatis 更加灵活&am…

windows下Redis多实例部署

当存在多个项目的时候&#xff0c;需要同时部署时&#xff0c;且只有一台服务器时&#xff0c;哪么就需要部署Redis多个实例&#xff0c;原理很简单&#xff0c;多个Redis服务运行使用不同的配置及数据管理。 具体操作如下&#xff1a; 1、进入redis安装目录&#xff0c;找到…

zerotier的planet服务器(根服务器)-搭建教程

应用场景介绍: 利用阿里云服务器,搭建根服务器,把不同局域网打通,实现内网穿透,远程控制。 准备工具: 1、服务端:云服务器(有公网IP)Centos 7.62、客户端: 工控机(或者家里电脑)(Linux) ,公司电脑Windows 搭建私有化 ZeroTier步骤: 一、云服务器上安装服务操作…

python如何制作并安装自建包?

一、依赖 首先检查python是否安装了wheel、setuptools包,没有则使用pip安装pip install wheel --force-reinstallpip install setuptools --force-reinstall 二、准备文件在create_package文件夹下,制作自定义包(myPackage): 在该包下,有aa.py和bb.py两个模块, 同时该包…

win11怎么回去win10?四种方法教你!

win11系统与旧系统相比&#xff0c;在这些方面进行了重大更新&#xff1a;新的开始菜单、通知中心、重新设计的任务栏以及更加美观的圆角窗口&#xff0c;确实给用户带来了不一样的体验。然而&#xff0c;win11有时漏洞频出、BUG不断和兼容性不佳的问题&#xff0c;让很多升级w…

(附源码)springboot企业合同管理系统 毕业设计 161456

springboot企业合同管理系统 摘 要 信息化社会内需要与之针对性的信息获取途径&#xff0c;但是途径的扩展基本上为人们所努力的方向&#xff0c;由于站在的角度存在偏差&#xff0c;人们经常能够获得不同类型信息&#xff0c;这也是技术最为难以攻克的课题。针对企业合同等问…

安装CUDA、anaconda、pytorch

文章目录前言一、CUDA安装1.查看CUDA版本2.安装CUDA2.1 下载CUDA2.2 安装CUDA2.3 测试CUDA安装成功二、anaconda安装1.anaconda下载2.anaconda环境变量配置3.测试anaconda安装成功3.anaconda常见命令操作3.1 清华镜像3.2 切换虚拟环境三、pytorch安装1.anaconda下pytorch安装2.…

YOLOV5模型转onnx并推理

YOLOV5模型转onnx并推理模型转onnx普通模型转onnxyolov5模型转onnxonnx 推理普通模型yolov5模型一、推理二、坐标转换三、非极大值抑制四、根据置信度过滤无用框五、画图六、总代码模型转onnx 普通模型转onnx 加载模型&#xff0c;需要是torch.save保存的模型指定输入输出的名…

模板建立

模板建立 步骤如果还没有建立一个组存储自己的模板,则先选择2(红框处)然后取个名字就好如果已经有组了,在自己建立的组内添加新模板1:后续快速生成使用的代码 2:对该模板的描述 3.模板代码 4.应该是为这个模版声明对应的语言(后附展示具体界面)根据需要选择语言,一般为java,也有…

JMeter详细安装教程

文章目录1 运行环境配置2 JMeter下载3 JMeter环境变量配置与启动3.1 环境变量配置3.2 启动1 运行环境配置 JMeter运行需要java环境&#xff0c;安装JMeter前需要安装配置好Java&#xff0c;参考文章Java环境变量配置详细教程 2 JMeter下载 下载地址&#xff1a;http://jmete…

新一期智能钱包系列:Louis Guthmann和 Ivo Georgiev 讨论账户抽象与智能钱包

Ambire 的 Twitter Space 第 10 集探讨了 EVM 生态系统中的互操作性和资产管理的解决方案。 &#x1f525;&#x1f525;准备好迎接第&#x1f51f;集了吗&#xff1f; 我们将对以太坊账户和智能合约进行研究&#x1f913;&#xff0c;这将会很有趣。&#x1f606; 周四凌晨 1 …

【Spring】AOP的三种方式

什么是aop AOP&#xff08;Aspect Oriented Programming&#xff09;意为&#xff1a;面向切面编程&#xff0c;通过预编译方式和运行期动态代理实现程序功能的统一维护的一种技术。AOP是OOP的延续&#xff0c;是软件开发中的一个热点&#xff0c;也是Spring框架中的一个重要内…

SLAM第11讲

在&#xff11;&#xff11;讲中要下载DBow3库 地址&#xff1a;https://github.com/rmsalinas/DBow3 cd DBoW3 #进入源文件夹 mkdir build #新建一个编译目标文件夹 cd build #将build作为make工作路径 cmake -DUSE_CONTRIBON .. #编译上一级目录&#xff0c…

uni-app 怎么实现路由拦截

前言 随着业务的需求&#xff0c;项目需要支持H5、各类小程序以及IOS和Android&#xff0c;这就需要涉及到跨端技术&#xff0c;不然每一端都开发一套&#xff0c;人力成本和维护成本太高了。团队的技术栈主要以Vue为主&#xff0c;最终的选型是以uni-appuview2.0作为跨端技术…

Hugging Face学习

huggingface学习了解案列基础中文文本分类任务中文文本填空中文关系推断了解 Huggingface官网: link。Huggingface是一个开源社区&#xff0c;它提供给了先进的NLP模型&#xff0c;数据集以及其他的工具&#xff1a;数据集&#xff0c;数据集的下载地址&#xff1b;各种预训练…

杨氏干涉实验

摘要 杨氏干涉实验是显示光的波动特质的著名实验之一。这是当今几个量子光学实验的基础。 我们通过使用可调节狭缝宽度和狭缝距离的双狭缝&#xff0c;在VirtualLab Fusion中重现了这个著名的实验。 使用一个单点光源&#xff0c;我们检查了缝隙宽度和缝隙距离对干涉的影响&a…

什么OKR,分明是中华田园KPI

最近&#xff0c;OKR被诟病得越来越严重了&#xff1a;OKR就是啥都OK啊&#xff0c;最后累死自己就好了。这个诞生于互联网、成熟于互联网巨头&#xff0c;并普及世界的管理方法&#xff0c;却在本土化的实践中出现各种怨声哀道。 更有人吐槽的生动形象&#xff1a; OKR真的水土…

差分约束原理及其应用

经典应用&#xff1a;求不等式组的解 差分约束系统是一组n元一次不等式组&#xff0c;描述了n个变量x1~xn 之间的m对相对关系&#xff0c;其中每一个变量都可以变成形如xi-xj<ck,再来可以进一步变形成xi<xjck,这一条式子和求最短路算法里面的三角不等式dist[y]<dist…

MySQL——(三大日志)(MVCC)(间隙锁与其他各种锁)

三大日志 一个SQL执行的时候&#xff0c;会在buffer pool里面做哪些操作 undo log 在对数据执行操作之前就进行了记录 undo log主要记录了数据的逻辑变化&#xff0c;比如一条INSERT语句&#xff0c;对应一条DELETE的undo log&#xff0c;对于每个UPDATE语句&#xff0c;对应一…

【电商数仓】修改压缩编码、hive环境部署、yarn配置、idea开发环境搭建、准备数据

文章目录0 修改压缩编码格式&#xff08;1&#xff09;业务数据首日同步脚本&#xff08;2&#xff09;修改消费&#xff08;第二层&#xff09;Flume的配置文件1 Hive环境搭建&#xff08;1&#xff09;Hive引擎简介&#xff08;2&#xff09;Hive on Spark配置兼容性说明部署…