生信技能树的一个学徒学完后去了某产工作,然后拿到了一份《早期胰腺癌分子诊断专家共识(2023年版)》,如下,想看看几款miRNA体外诊断试剂盒性能如何。现在我们来看看!
专家共识
miRNA体外诊断试剂盒
问问人工智能大模型看看
在开始使用具体的数据进行查看之前,我们来问问人工智能大模型会给出一个什么样的答案。问:miRNA体外诊断试剂盒性能怎么样?kimi:https://kimi.moonshot.cn/
miRNA体外诊断试剂盒的性能表现较为出色,以下是其在不同方面的表现:
灵敏度
高灵敏度:许多miRNA体外诊断试剂盒具有较高的灵敏度,能够检测到低浓度的miRNA。例如,Vazyme的miRNA试剂盒可在pg级的总RNA中检测到目标miRNA。TaqMan MicroRNA 检测试剂盒仅需1-10 ng总RNA即可进行检测。 低检出限:一些试剂盒的检出限较低,如10家三甲医院评估的7种miRNA检测试剂盒,其检出率均为100%,显示出高灵敏度。 特异性
高度特异性:许多试剂盒能够特异性地检测成熟miRNA,并区分高度同源的miRNA。例如,TaqMan MicroRNA 检测试剂盒仅定量成熟miRNA,区分前体miRNA。Hifair® miRNA试剂盒能够区分同家族miRNA间的单碱基差异。 抗干扰能力:部分试剂盒在存在常见干扰物(如溶血、脂血和黄疸)的样本中仍保持稳定,显示出较强的抗干扰性。 精密度
重复性和稳定性:一些试剂盒表现出良好的重复性和稳定性。例如,10家三甲医院评估的7种miRNA检测试剂盒的精密度评估结果显示,其Ct值能达到试剂盒说明书中厂家声明的指标。此外,Hifair® miRNA试剂盒在37℃稳定7天或冻融50次或配置体系在25℃保留48小时,效果依旧稳定。 动态范围
宽广的动态范围:部分试剂盒具有宽广的定量线性范围。例如,Hairpin-it™ miRNAs RT-PCR Quantitation Kit的定量线性范围跨越7个数量级,能够从几个拷贝到几万个拷贝进行精确定量。 适用性
适用样本类型广泛:一些试剂盒适用于多种样本类型,包括总RNA、细胞裂解物以及纯化的RNA,甚至基因组DNA的污染也不会干扰miRNA的定量。 多领域应用:miRNA体外诊断试剂盒不仅在肝癌等疾病的诊断中表现出色,还可用于其他疾病的检测和研究,具有广泛的应用前景。 操作便捷性
操作简单快速:部分试剂盒操作简单,能够快速完成检测。例如,TaqMan MicroRNA 检测试剂盒的两步定量RT-PCR分析法可在3小时内产生高质量结果。
试剂盒性能查看
首先当然需要去搜索一下胰腺癌相关的数据集,这里我们检索到了一些数据:
GSE24279:https://www.ncbi.nlm.nih.gov/geo/query/acc.cgi?acc=GSE24279,包含185个样本(n = 22正常对照样本,n = 27胰腺炎样本,n = 136胰腺癌样本 ) GSE59856:https://www.ncbi.nlm.nih.gov/geo/query/acc.cgi?acc=GSE59856,包含571个样本(有胰腺癌,正常对照,还有其他癌症类型样本) GSE71008:https://www.ncbi.nlm.nih.gov/geo/query/acc.cgi?acc=GSE71008,192个样本 GSE262260:https://www.ncbi.nlm.nih.gov/geo/query/acc.cgi?acc=GSE262260,924个样本
这里我们使用 GSE24279 看看,看诊断试剂盒的方法其实比较简单,就是miRNA相对于对照正常,在癌症样本中是高表达还是低表达,看看标书中的描述看看:
这四个miRNA为:hsa-miR-30c-5p、hsa-miR-24-3p、hsa-miR-23a-3p 和 hsa-miR-132-3p,在肿瘤样本中高表达相对于正常对照。
1、首先拿到GSE24279的表达矩阵
rm(list = ls()) ## 魔幻操作,一键清空~
options(stringsAsFactors = F)
library(AnnoProbe)
library(GEOquery)
library(ggplot2)
library(ggstatsplot)
library(patchwork)
library(reshape2)
library(stringr)
getOption('timeout')
options(timeout=10000)
## 获取并且检查表达量矩阵
# ~~~gse编号需修改~~~
gse_number <- 'GSE24279'
list.files()
gset <- getGEO( gse_number , destdir = '.', getGPL = F)
gset[[1]]
a <- gset[[1]]
dat <- exprs(a) #a现在是一个对象,取a这个对象通过看说明书知道要用exprs这个函数
dim(dat)#看一下dat这个矩阵的维度
dat[1:4,1:4] #查看dat这个矩阵的1至4行和1至4列,逗号前为行,逗号后为列
##~~~查看数据是否需要log~~~
range(dat)
boxplot(dat[,1:4],las=2)
# 这里进行简单操作
dat <- log2(dat-min(dat)+1)
boxplot(dat[,1:4],las=2)
rownames(dat)
dim(dat)
2、获取样本分组
有三种表型:正常,炎症,癌症
# 根据生物学背景及研究目的人为分组
# 通过查看说明书知道取对象a里的临床信息用pData
pd <- pData(a)
##挑选一些感兴趣的临床表型。
colnames(pd)
#
pd[,10]
pd$title
group_list <- pd$`disease state:ch1`
table(group_list)
group_list <- factor(group_list, levels = c("healthy","pancreatitis","pancreatic cancer"))
table(group_list)
3、查看四个miRNA的表达
# hsa-miR-30c-5p,hsa-miR-24-3p,hsa-miR-23a-3p,hsa-miR-132-3p
rownames(dat)
cg <- strsplit('hsa-miR-30c-5p,hsa-miR-24-3p,hsa-miR-23a-3p,hsa-miR-132-3p',',')
cg <- unlist(cg)
cg
cg %in% rownames(dat)
# 上面没有这四个miRNA的成熟体3`,5`,直接看非成熟体看看
cg <- strsplit('hsa-miR-30c,hsa-miR-24,hsa-miR-23a,hsa-miR-132',',')[[1]]
cg
cg %in% rownames(dat)
cg <- cg[cg%in% rownames(dat)]
cg
dat[cg,1:10]
# 绘图
mydata <- reshape2::melt(dat[cg,])
mydata$group <- rep(group_list,each=length(cg))
head(mydata)
library(ggpubr)
p <- ggboxplot(mydata, x = "Var1", y = "value", color = "group", palette = "jama",
add = "jitter",xlab = "",ylab = "expression")
p
结果如下: