前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >超400病人的临床实验结果还需要生信验证

超400病人的临床实验结果还需要生信验证

作者头像
生信技能树
发布于 2024-11-21 01:35:28
发布于 2024-11-21 01:35:28
8900
代码可运行
举报
文章被收录于专栏:生信技能树生信技能树
运行总次数:0
代码可运行

我们的生物信息学马拉松授课的一个最重要的环节就是表达量矩阵数据处理,其中让大家练习最频繁的就是传统的表达量芯片的差异分析和富集分析啦。其中有一个学员是临床医师, 感兴趣的是胃肠道间质瘤(Gastrointestinal Stromal Tumor)这个疾病,但是他在复现一个芯片数据的时候,发现了临床实验结果和表达量芯片数据出现了冲突!

我们首先让人工智能大模型帮我们介绍一下,胃肠道间质瘤(Gastrointestinal Stromal Tumor)这个疾病:

是一种发生在胃肠道的软组织肉瘤,通常起源于胃肠道的间质细胞(Cajal细胞)。这些肿瘤可以发生在消化道的任何部位,但最常见于胃和小肠。GIST的治疗和预后因其生物学特性和临床行为的多样性而复杂。

比如仁济医院的2014的文章:《CTHRC1 Acts as a Prognostic Factor and Promotes Invasiveness of Gastrointestinal Stromal Tumors by Activating Wnt/PCP-Rho Signaling》,就提到了需要这么多信息才能准确判断GIST病人的原因:

  1. 明确的病理诊断
    • GIST的诊断通常需要通过免疫组化染色检测CD117(也称为c-kit)的阳性表达。CD117是一种细胞表面蛋白,是GIST的一个关键生物标志物。
  2. 原发性GIST病例
    • 排除有其他实体肿瘤历史的病例是为了确保研究的焦点是GIST本身,而不是其他肿瘤类型或转移性肿瘤。
  3. 接受根治性手术
    • 确保患者接受了旨在完全切除肿瘤的手术,没有留下肿瘤残留,这对于评估治疗效果和预后至关重要。
  4. 无术前辅助治疗
    • 排除在手术前接受过化疗、放疗或其他抗癌治疗的患者,因为这些治疗可能影响肿瘤的生物学特性和病理反应。
  5. 完整的临床病理和随访数据
    • 为了全面评估患者的治疗反应、生存期和疾病复发情况,需要详细的临床、病理和长期随访数据。
  6. 伦理审查和知情同意
    • 研究需要获得伦理委员会的批准,并确保患者知情同意参与研究,这是医学研究的基本伦理要求。

这些纳入标准有助于确保研究的准确性和可靠性,同时保护患者的权益。通过这些严格的标准,研究人员可以更准确地评估GIST的生物学特性、治疗效果和预后因素,从而为未来的治疗策略和临床实践提供科学依据。GIST的治疗通常包括手术切除、靶向治疗(如使用酪氨酸激酶抑制剂)和在某些情况下的辅助治疗。由于GIST的罕见性和复杂性,对这种疾病的研究需要精确的患者选择和详细的数据收集。

仁济医院的超400病人的临床实验

文章有大量的实验结果, 就为了说明这个CTHRC1是典型的癌基因(恶性高表达,坏的预后):

  • CTHRC1 Expression Is Gradually Elevated in Accordance with GIST Risk Grades
  • Figure 2. (A) Kaplan-Meier analysis of overall survival related to the expression of CTHRC1 in 412 GIST patients.

如下所示:

CTHRC1是典型的癌基因(恶性高表达,坏的预后)

公共数据(表达量芯片)

这个文章可能是觉得自己的超400病人的临床实验结果不可靠,然后使用了公共数据(表达量芯片)进行辅助说明,如下所示:

By analyzing the GIST microarray dataset (GSE21315) from the GEO database (Figure W1A), we found that CTHRC1 expression in GIST with liver metastasis was remarkably higher than in primary GIST tissues(fold change> 3, P < 0.05).

如下所示:

GSE21315

表达量芯片数据处理

使用我们马拉松授课的芯片的数据处理代码即可:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
library(AnnoProbe)
library(GEOquery) 
gse_number <- 'GSE21315'
list.files() 
if(T){gset <- geoChina(gse_number)} 
a=gset[[1]] 
dat=exprs(a) #a现在是一个对象,取a这个对象通过看说明书知道要用exprs这个函数
dim(dat)#看一下dat这个矩阵的维度
dat[1:4,1:4] #查看dat这个矩阵的14行和14列,逗号前为行,逗号后为列 

library(limma) 
a=gset[[1]] 
#根据生物学背景及研究目的人为分组
##通过查看说明书知道取对象a里的临床信息用pData
pd=pData(a)  
 
library(stringr)
##~~~分组信息编号需修改~~~
group_list=ifelse(grepl('pri',pd$title,ignore.case = T ),
                  "primary","metastatic")
table(group_list)
group_list <- factor(group_list,levels = c( "primary","metastatic"))
table(group_list)

a
a@annotation

# #获取芯片注释信息
# ##~~~芯片编号需修改~~~
ids=idmap( a@annotation ,'soft')
head(ids) 
# 8147777 CTHRC1
boxplot(dat['8147777',] ~ group_list)
group_list 
 

有了表达量矩阵很容易进行基本的质量控制,如下所示:

然后limma进行差异分析即可,从里面查询我们感兴趣的基因:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
> t(deg['CTHRC1',])
          CTHRC1   
logFC     "0.3724" 
AveExpr   "0.03416"
t         "2.073"  
P.Value   "0.07356"
adj.P.Val "0.4286" 
B         "-4.476" 
v         "1.133"  
g         "stable" 
name      "CTHRC1" 

前面提到了这个基因是 (fold change> 3, P < 0.05), 但是我们做出来并不是这样的,所以问题在哪里呢,是统计学算法吗,难道作者并没有使用limma这个最经典的表达量芯片数据处理方法吗?

实际上,如果大家仔细看上面的表达量箱线图,会发现只有6个样品:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
          dat["CTHRC1", ]
GSM532745        -0.46192
GSM532746        -0.01652
GSM532747        -0.11738
GSM532748        -0.24399
GSM532749         0.01651
GSM532750         0.37873
GSM532751         0.37551
GSM532752         0.34229

为什么要删除呢?本来就使用了如此古老的数据集来验证,还自己动了手脚。

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2024-09-04,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 生信技能树 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 仁济医院的超400病人的临床实验
  • 公共数据(表达量芯片)
  • 表达量芯片数据处理
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档