Tidyverse处理差异分析结果

2020-08-02  本文已影响0人  嗒嘀嗒嗒嘀嗒嘀嘀

基因课FTP地址:ftp://http://gsx.genek.tv/2020-3-10%E7%9B%B4%E6%92%AD%E4%B8%80%E4%B8%AA%E5%AE%8C%E6%95%B4%E7%9A%84%E8%BD%AC%E5%BD%95%E7%BB%84%E9%A1%B9%E7%9B%AE/
听张旭东老师的课

加载tidyverse包

library(tidyverse)

环境数据保存与加载

导入差异表达分析结果

de <- read.table(file = 'data/rnaseq-apple/genes.counts.matrix.KID_S1_vs_KID_S4.DESeq2.DE_results', header = T) # 不将第一列设置为列名,因为要用tidyverse处理,tidyverse体系中不需要行名

提取想要的列(注意:有些绘图要求不去除小于阈值的FC值)

新建列表示FC(表达量倍数)、direction(表达量升高还是降低)

deg <- mutate(FC = 2 ** log2FoldChange, direction = if_else(log2FoldChange > 1, 'up', 'down'))

多表关联聚合LEFT JOIN

整合后的步骤

de_result <- # 数据导入
mutate(de_result, direction =
if_else(padj > 0.05, 'ns',
if_else(abs(log2FoldChange) < 1, 'ns', # 同时满足padj<0.05, log2FC>1才能叫significant
if_else(log2FoldChange >= 1, 'up', 'down'))) # 添加上下调信息
) %>%
left join(gene_info, by = c('id' = 'GID')) %>% # 关联基因信息
left join(rownames_to_column(gene_exp, var = 'id'), by = 'id') %>% # 关联表达量信息
dplyr::select(-c(2:4, 6:7)) %>% # 去除无用的列
arrange(desc(abs(log2FoldChange))) # 按log2FoldChange绝对值降序排列

按照上调与下调分组

题外话

上一篇 下一篇

猜你喜欢

热点阅读