Loading [MathJax]/jax/output/CommonHTML/config.js
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >RT-qPCR从384板结果到mRNA相对表达量箱线图

RT-qPCR从384板结果到mRNA相对表达量箱线图

原创
作者头像
用户10328045
修改于 2023-02-08 15:41:54
修改于 2023-02-08 15:41:54
8190
举报
文章被收录于专栏:R语言小白R语言小白

新手小白!!!请多批评指正!!!

某天分析384板数据觉得有点耗时,恰逢R语言刚入门1周,觉得可行,于是行动

在此感谢生信技能树和小洁老师!

保存384板结果为csv

个人习惯每次做两个复孔,上下为同一孔,每个引物占两行

每次可运行8个引物,每个引物总样本量最大为24

数据示例:

image.png
image.png
代码语言:text
AI代码解释
复制
rm(list = ls())
#!!!修改参数!!!
dat <- read.csv(file = "ct_value_2.csv",header = F) #文件名
gene_list <- c("ACTIN","A","B","C","D","E","F","G")   #基因名
neican <- "ACTIN"   #内参是哪个基因
n_group <- 3    #分组个数
name_sample <- c("CTRL","TREAT","THERAPY") #组名
n_sample <- c(5,7,12) #每组样本数量
#!!!修改结束!!!

以上内容为不同数据修改参数

如果样本量不满24,引物不满8个,可如下放置数据

image.png
image.png
代码语言:text
AI代码解释
复制
# 计算均值
b <- (1:16)[c(T,F)]
for(i in b){
  dat[(((i+1)/2)+16),] <- apply(dat[i:(i+1),],2,mean)
}
dat_aver <- dat[17:24,]

#计算dCT值
library(stringr)
neican_n <- which(str_detect(gene_list,neican) == T)
for (i in 1:8) {
  dat_aver[i+8,] <- dat_aver[i,]-dat_aver[neican_n,]
}
dat_dCT <- dat_aver[9:16,]
dat_dCT <- dat_dCT[-neican_n,]

#计算ddCT
con_aver <- apply(dat_dCT[,1:n_sample[1]], 1, mean)
for (i in 1:7) {
  dat_dCT[i+7,] <- dat_dCT[i,] - con_aver[[i]]
}
dat_ddCT <- dat_dCT[8:14,]

##计算foldchange
dat_foldchange <- 2^(-dat_ddCT)
dat_foldchange
image.png
image.png
代码语言:text
AI代码解释
复制
##命名
name <- rep(name_sample[1],n_sample[1])
for (i in 2:n_group) {
 name=c(name,rep(name_sample[i],n_sample[i]))
}

library(tidyr)
library(tibble)
library(dplyr)
gene_name <- gene_list[-neican_n]
gene_name2 <- paste0("gene_",gene_name)
dat_1 = t(dat_foldchange) %>% 
  as.data.frame()
round(dat_1,2)

colnames(dat_1) = gene_name2
dat_2 = rownames_to_column(dat_1) %>%
  mutate(group = name)

pdat = dat_2%>% 
  pivot_longer(cols = starts_with("gene"),
               names_to = "gene",
               values_to = "count") #宽变长

library(ggplot2)
pdat$group2 <- factor(pdat$group,levels = name_sample)
p = ggplot(pdat,aes(gene,count))+
  geom_boxplot(aes(fill= group2))+
  theme_bw()
p
image.png
image.png
代码语言:text
AI代码解释
复制
p + facet_wrap(~gene,scales = "free")
image.png
image.png

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

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

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

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

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
R语言day7:函数的高级运用(2)
不会写代码的医学生
2024/03/14
1510
数据分析:RT-qPCR分析及R语言绘图
转录组分析是一种用于研究细胞或组织中所有RNA分子的表达水平的高通量技术。完成转录组分析后,科学家们通常需要通过定量实时聚合酶链式反应(qRT-PCR)来验证二代测序(Next-Generation Sequencing, NGS)结果的可靠性。这是因为qRT-PCR是一种精确的定量方法,可以用来验证特定基因的表达水平。
生信学习者
2024/06/19
5380
数据分析:RT-qPCR分析及R语言绘图
生物信息数据分析教程视频——13-3种R包(DESeq2、edgeR和limma)进行RNAseq的差异表达分析与比较
视频地址:http://mpvideo.qpic.cn/0bc3zeaakaaalqalwhjtmzrvbsodaxeqabia.f10002.mp4? 参考文章: 超详细的DESeq2和edg
DoubleHelix
2022/12/15
1.4K0
生物信息数据分析教程视频——13-3种R包(DESeq2、edgeR和limma)进行RNAseq的差异表达分析与比较
七步走纯R代码通过数据挖掘复现一篇实验文章(第1到6步)
提高数据清洗的能力,将会很大程度的提高你做分析数据的速度,可能有的人还是习惯用Excel来清洗数据,但是我建议能用代码的尽量用代码解决,数据清洗思路也很重要,一定要清楚你的目标,然后思考可能实现的途径。
生信技能树
2019/09/03
2.4K0
七步走纯R代码通过数据挖掘复现一篇实验文章(第1到6步)
详解 R 语言的PCA与TSNE的降维聚类
为了查看降维聚类的可视化效果,我们先用相似样本降维聚类,然后使用具有差异的样本查看聚类效果。
白墨石
2021/04/23
1.6K0
聚类算法之PCA与tSNE
没有体现任何的基因差异或者样本聚类(热图中的聚类是自然层次聚类),可以看到样本名都是无规律的交叉显示
生信技能树jimmy
2020/03/31
3.7K0
初探mRNA、lncRNA联合分析之下游
虽然这个项目是在转录本水平上开展的研究,但既然我们拿到了基因表达矩阵,也干脆看一看一些基本情况,这个部分代码此处省略,基本上和后面的转录本水平对应代码,包括使用的封装函数,是一致的
生信菜鸟团
2023/08/23
8310
初探mRNA、lncRNA联合分析之下游
高度定制的go和kegg富集分析R语言绘图 | Circular barplot
我前面的甲基化教程主要是针对450k这样的芯片,所以champ流程就绰绰有余,很多小伙伴在咱们公众号后台咨询甲基化测序数据分析,恰好最近实习生投稿:
生信技能树
2022/01/21
5.4K0
高度定制的go和kegg富集分析R语言绘图 | Circular barplot
利用表达矩阵绘制箱线图
用户10803004
2023/10/30
2030
R绘图 | 表达矩阵画箱线图
变量可以分为很多种,如连续变量、分类变量等。当数据集中包含了分类变量和连续变量时,我们想了解连续变量是怎样随着不同的分类变量水平变化而变化,这时散点图中则会出现大量重叠,而箱式图则可以更清晰的展示这类数据。
小汪Waud
2023/02/16
2.9K0
R绘图 | 表达矩阵画箱线图
十二、R语言的综合应用
[1] "The birch canoe slid on the smooth planks."
叮当猫DDM
2023/03/01
3.4K0
R语言专题6-表达矩阵画箱线图
生信汪一昂
2023/09/23
3110
R_basic 02
Part5文件读取 >write.csv(test,file="example.csv") > read.csv()通常读取CSV格式 > write.table(test,file="example.txt") > read.table()通常读取txt格式 > save(test,file="example.Rdata") > load("example.Rdata") > a <- data.table::fread("soft.t
用户10407321
2023/03/23
3750
R_basic 02
GEO表达芯片数据分析
---title: "GEO表达芯片数据分析"output: html_documentdate: "2023-03-20"---关于该流程代码的说明:(1)本流程仅适用于GEO芯片表达数据,以"GSE56649"为例(2)先在GEO数据库中确定是否为"Expression profiling by array",不是的话不能使用本流程!(3)注意需要自行修改或判断的代码一般放在了两个空行之间(4)代码的注释有一丢丢多,目的是为了更好地帮助大家理解1.下载数据,提取表达矩阵、临床信息和GPL编号rm(lis
小叮当aka
2023/03/23
3.4K1
生信技能树GEO数据挖掘直播配套笔记
二代测序(RNA_seq):如果是counts 可选择limma的voom算法或者edgeR或者DESeq2。 如果是FPKM或TPM可选择limma,注意:edgeR和DESeq2只能处理count注意:count做差异分析计算上下调,FPKM或TPM进行下游可视化
生信技能树
2022/06/08
2.1K0
生信技能树GEO数据挖掘直播配套笔记
GEO数据库挖掘
输入数据是数值型矩阵/数据框,颜色的变化表示数值的大小。有相关性热图和差异基因热图。
叮当猫DDM
2023/07/16
8621
单基因绘制组间差异箱线图及ROC曲线
ggplot2 是 R 语言中一个非常强大的绘图包,能够绘制出更加美观和复杂的图形。
生信技能树
2025/01/15
6650
单基因绘制组间差异箱线图及ROC曲线
送你一篇TCGA数据挖掘文章
UCSC Xena网址:https://xena.ucsc.edu/public-hubs/
生信技能树
2018/12/24
4.4K6
指定通路绘制gsea图热图和火山图
但是我们直接是对gsea分析结果的最终es值在可视化,所以是行是通路,列是癌症的,数值是gsea的es打分的矩阵。对初学者来说, 跳过了大量细节,所以跟这个教程会比较吃力,有粉丝就提问了希望可以对这些通路在在具体的癌症里面细化展示,比如绘制gsea图,热图和火山图。
生信技能树
2022/07/26
2.5K0
指定通路绘制gsea图热图和火山图
R语言ggplot2科研数据数据可视化实用手册~第八章热图(heatmap)
今天下午7点到9点直播讲解如下代码,腾讯会议,感兴趣的参加,给推文打赏10元获取腾讯会议直播链接
用户7010445
2023/01/06
3.4K0
R语言ggplot2科研数据数据可视化实用手册~第八章热图(heatmap)
相关推荐
R语言day7:函数的高级运用(2)
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档