R语言与临床模型预测——LASSO回归,单因素多因素cox,差异表达分析,Venn图,森林图,列线图,矫正曲线,ROC全套代码及解析——第三部 基因去重复 本专栏可免费答疑

 上次我们进行了基因的匹配,这次我们要对基因进行去重复处理。生物信息学之临床模型预测——LASSO回归,单因素多因素cox,列线图,矫正曲线,ROC,DCA全套代码及解析——第二步,匹配基因_Lijingxian教你学生信的博客-CSDN博客https://blog.csdn.net/weixin_46500027/article/details/124206274?spm=1001.2014.3001.5501

 这个临床模型预测会针对一个案例进行讲解,目录如下:

1.下载数据

2. 匹配基因

3. 基因去重复

4.匹配临床数据

5.批量cox回归分析

6.差异表达基因筛选

7.取交集,选出预后相关的差异表达基因

8.森林图绘制

9.lasso回归进一步排除具有共线性的基因

10.验证集验证,数据合并验证

11.多因素cox回归建模

12.列线图

13.矫正曲线

14.ROC曲线分析

先看看上次生成的文件:

 和上次一样,我们读出了一个data,现在我们原封不懂的都进R语言:


setwd("D:\\自噬临床模型预测\\自噬相关基因临床模型预测\\2匹配自噬基因及临床数据")
dir()
data <- read.csv("data.csv",header = T,sep = ",",row.names = 1)
data[1:5,1:5]


####  看看数据
> data[1:5,1:5]
           X TCGA.BP.4342.01A TCGA.A3.3387.01A TCGA.BP.4167.01A TCGA.B8.4620.01A
32474 AMBRA1         4.506872         4.679614         4.599814         4.288099
56900  APOL1         5.383224         6.493254         9.546216         5.652480
3128    ARNT         5.570176         5.107071         5.194878         5.290483
57367   ARSA         4.523195         4.220274         4.245679         3.966170
16527   ARSB         4.110176         5.627957         5.654773         4.632897

和上一期一样,我们匹配完基因以后第一列是基因名。

因为我们要和临床数据进行匹配,所以我们需要将第一列的基因名变成行名:

 下面我们运行一下代码:

rownames(data) <- data$X


####
Error in `.rowNamesDF<-`(x, value = value) : 不允许有重复的'row.names'
In addition: Warning message:
non-unique values when setting 'row.names': ‘GAA’, ‘GABARAP’, ‘GABARAPL1’, ‘GABARAPL2’, ‘GAPDH’, ‘GNAI3’, ‘GNB2L1’, ‘GOPC’, ‘GRID1’, ‘GRID2’ 

此时我们发现,系统报错,因为有重复值。

出现重复值的原因是什么,因为我们整理基因的时候,没有整理好,这时候我们再倒回去看一看自噬基因的文件:

 原本整理的基因就有重复,所以匹配的时候匹配了两遍。

这不是我们的原因,这是网站的原因。

所以此时我们需要去重复。

执行下面代码:

duplicate <- which(duplicated(data$X))
duplicate### 首先找到重复的基因位置,然后剪掉就好
data <- data[-duplicate,]

另一种方法:

data <- data[which(!duplicated(data$X)),]
######  duplciated 前面加了一个感叹号,表示非的意思,也就是非重复的基因的位置。

然后我们再将第一列基因名换成行名:

rownames(data) <- data$X
data[1:5,1:5]

### 
> data[1:5,1:5]
            X TCGA.BP.4342.01A TCGA.A3.3387.01A TCGA.BP.4167.01A TCGA.B8.4620.01A
AMBRA1 AMBRA1         4.506872         4.679614         4.599814         4.288099
APOL1   APOL1         5.383224         6.493254         9.546216         5.652480
ARNT     ARNT         5.570176         5.107071         5.194878         5.290483
ARSA     ARSA         4.523195         4.220274         4.245679         3.966170
ARSB     ARSB         4.110176         5.627957         5.654773         4.632897

然后我们把第一列删掉:

data <- data[,-1]
data[1:5,1:5]

##
> data[1:5,1:5]
       TCGA.BP.4342.01A TCGA.A3.3387.01A TCGA.BP.4167.01A TCGA.B8.4620.01A TCGA.BP.4769.01A
AMBRA1         4.506872         4.679614         4.599814         4.288099         4.665946
APOL1          5.383224         6.493254         9.546216         5.652480         6.959901
ARNT           5.570176         5.107071         5.194878         5.290483         5.696982
ARSA           4.523195         4.220274         4.245679         3.966170         5.056403
ARSB           4.110176         5.627957         5.654773         4.632897         3.868812

基因换成行名以后,我们再进行一下转置。转置的目的是什么呢?

因为我们方便基因表达和临床数据进行匹配,

因为之前的临床数据是这样的: 

 执行以下代码,把样本名变成列名:


data <- as.data.frame(t(data))
data[1:5,1:5]

### 
> data[1:5,1:5]
                   AMBRA1    APOL1     ARNT     ARSA     ARSB
TCGA.BP.4342.01A 4.506872 5.383224 5.570176 4.523195 4.110176
TCGA.A3.3387.01A 4.679614 6.493254 5.107071 4.220274 5.627957
TCGA.BP.4167.01A 4.599814 9.546216 5.194878 4.245679 5.654773
TCGA.B8.4620.01A 4.288099 5.652480 5.290483 3.966170 4.632897
TCGA.BP.4769.01A 4.665946 6.959901 5.696982 5.056403 3.868812

此时的自噬基因表达数据就是可以和临床生存数据匹配的了。

下面我们先读出来保存一下,并将数据命名为:Autophagy_gene_expression.csv

write.csv(data,"Autophagy_gene_expression.csv")

此时,文件夹里面会出现此文件:

下一期,进行表达数据和临床数据的匹配。 

  • 4
    点赞
  • 14
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

楷然教你学生信

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值