TCGA_不同gleason评分的 gene 表达

library("stringr")
library("dplyr")
library("ggplot2")
library("readr")

加载数据(将第1列转为行名):

if(T){
  dataFilt=read_csv(file = 'dataFilt.csv') 
  dataFilt=as.data.frame(dataFilt) 
  rownames(dataFilt)=dataFilt[,1] 
  dataFilt=dataFilt[,-1]
  dataFilt=log(dataFilt+1) #取对数
} #测序数据

if(T){
  data_cl=read_csv(file = 'data_cl_index.csv') 
  data_cl=as.data.frame(data_cl) 
  rownames(data_cl)=data_cl[,1] 
  data_cl=data_cl[,-1]
} #临床数据

一、合并临床和测序数据

1 更改dataFilt使其能与data_cl匹配

dataFilt_t=t(dataFilt) #转置

dataFilt_t=as.data.frame(dataFilt_t)
dataFilt_t <- add_rownames(dataFilt_t, "Sample") #add_rownames()使row.names变为第一列(data.frame)
colnames(data_cl)[1]="Sample" 

dataFilt_t$Sample=str_sub(dataFilt_t$Sample,1,12) #取病人编号

2 合并(便于后面任意提取基因)

data_m <- inner_join(data_cl,dataFilt_t, by= "Sample") #inner_join按by指定合并数据

二、获取包含“Gene表达”、“对应gleason评分”的data.frame

1 从data_m中提取Gene和临床信息

Gene='CHAC1'
gene_cl<- data_m %>% dplyr:: select( 1:ncol(data_cl),all_of( Gene ))

2 gene_cl加上临床信息“gleason_sum”

t_gleason1=as.numeric(substr(data_m$primary_gleason_grade,9,9)) #substr()用于从“Pattern 3”中提取数字,“9”为数字对于字符序
t_gleason2=as.numeric(substr(data_m$secondary_gleason_grade,9,9))
t_gleason_sum=t_gleason1+t_gleason2

gene_cl=cbind(gene_cl,t_gleason_sum)

3 gene_cl中提取Gene和“gleason_sum”

gene_gleason=select(gene_cl,'Sample',Gene,'t_gleason_sum') #后三个元素为列名

 

 

三、ggplot作图

gene_gleason$t_gleason_sum<- as.factor(gene_gleason$t_gleason_sum) #离散变量转factor

p = ggplot(gene_gleason,aes(x = t_gleason_sum, y = gene_gleason[,Gene],color=t_gleason_sum)) +
  geom_boxplot() + 
  xlab("gleason score") +
  ylab(Gene) +
  theme_bw() #白色背景
p

 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
这个错误表示在R语言中进行二进制对数运算时出现了问题。二进制对数运算是指以2为底的对数运算,常用来处理数据的对数转换,以便在数据分析过程中更好地展示和分析数据。 根据这个错误信息,在代码中"tcga_luad_exp2"这个变可能是进行二进制对数运算的对象。然而,代码中可能出现了一些问题,导致R无法正确执行这个运算。可能的原因有以下几点: 1. 变名错误:变名可能没有正确定义,或者在代码的其他位置不正确定义了同名的变。 2. 语法错误:在进行二进制对数运算时,可能使用了不合法的语法,导致R无法正确解析运算。 3. 数据类型错误:变"tcga_luad_exp2"可能是一个不支持二进制对数运算的数据类型,导致R无法进行这个运算。 为了解决这个问题,你可以尝试以下几点: 1. 检查变名:确保变"tcga_luad_exp2"的变名拼写正确,并且没有其他同名的变。 2. 语法检查:仔细检查代码进行二进制对数运算的语法是否正确,保证使用了合法的R语言语法。 3. 数据类型转换:如果"tcga_luad_exp2"是一个数据框或者其他不支持二进制对数运算的数据类型,你可以尝试将其转换为支持运算的数据类型,如向或者数值型数据。 如果以上方法无法解决问题,你可以提供更多的代码和错误信息,以便我们给出更详细的解答。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

郁柳_Fudan

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

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

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

打赏作者

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

抵扣说明:

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

余额充值