本文的重点在于箱线图的调整,对ggplot2函数各个参数进行比较详细的剖析,方便绘图。
1 准备文件
准备文件包括表达矩阵,分组信息,表达矩阵行名为基因名,列名为样本名。
2 运行代码
2.1 加载R包、设定输入输出
# 加载必要的包
library(limma)
library(ggplot2)
library(ggpubr)
library(dplyr)
library(tidyr)
# 指定输出位置
output_folder <- "D:/Bio_Project/DEseq_batch/output" # 这里以我电脑中的工作路径为例
if (!dir.exists(output_folder)) {
dir.create(output_folder)
}
output_file <- file.path(output_folder,"boxplot.tiff")
# 输入
setwd("D:\\Bio_Project\\DEseq_batch\\input_GEO")
genelist <- "genelist.txt"
exp <- "GEO.txt"
group <- "group.txt"
2.2 读取基因
# 读取基因列表
gene_list <- read.table(genelist, header = TRUE, stringsAsFactors = FALSE)[,1]
# 读取表达矩阵
exp_data <- read.table(exp, header = TRUE, row.names = 1, stringsAsFactors = FALSE, check.names = FALSE)
# 读取分组信息
group_info <- read.table(group, header = TRUE, stringsAsFactors = FALSE)
colnames(group_info) <- c("sample", "group")
# 2. 数据预处理
# 过滤表达矩阵,只保留基因列表中的基因
exp_filtered <- exp_data[rownames(exp_data) %in% gene_list, ]
# 转置表达矩阵以便与分组信息合并
exp_t <- as.data.frame(t(exp_filtered))
exp_t$sample <- rownames(exp_t)
# 合并表达数据和分组信息
merged_data <- merge(exp_t, group_info, by = "sample")
2.3 差异分析
# 准备结果数据框
diff_results <- data.frame(gene = character(),
p.value = numeric(),

最低0.47元/天 解锁文章
2640

被折叠的 条评论
为什么被折叠?



