R语言批量计算t检验,输出pvalue和均值

1.输入数据如下:

2.代码如下

r 复制代码
setwd("E:/R/Rscripts/rG4相关绘图")
# 读取CSV文件
data <- read.csv("box-cds-ABD-不同类型rg4-2.csv", stringsAsFactors = FALSE)


# 筛选出Type2列为指定五种类型的数据
filtered_data <- subset(data, Type2 %in% c("G2L1-2", "G2L1-4", "G3", "G3B", "G3V"))

# 分别提取五种类型对应的Score
scores_list <- list(
  G2L1_2 = filtered_data$Score[filtered_data$Type2 == "G2L1-2"],
  G2L1_4 = filtered_data$Score[filtered_data$Type2 == "G2L1-4"],
  G3 = filtered_data$Score[filtered_data$Type2 == "G3"],
  G3B = filtered_data$Score[filtered_data$Type2 == "G3B"],
  G3V = filtered_data$Score[filtered_data$Type2 == "G3V"]
)

# 初始化一个空的数据框,用于存储结果
results <- data.frame(
  Group1 = character(),
  Group2 = character(),
  Mean1 = numeric(),
  Mean2 = numeric(),
  TStatistic = numeric(),
  PValue = numeric(),
  stringsAsFactors = FALSE
)

# 对所有可能的组合进行两两比较
for (i in 1:(length(scores_list)-1)) {
  for (j in (i+1):length(scores_list)) {
    group1 <- names(scores_list)[i]
    group2 <- names(scores_list)[j]
    scores1 <- scores_list[[i]]
    scores2 <- scores_list[[j]]
    
    # 执行t检验
    test_result <- t.test(scores1, scores2)
    
    # 将结果添加到结果数据框
    results <- rbind(results, data.frame(
      Group1 = group1,
      Group2 = group2,
      Mean1 = mean(scores1),
      Mean2 = mean(scores2),
      TStatistic = test_result$statistic,
      PValue = test_result$p.value
    ))
  }
}
# 输出结果
print(results)

3.输出结果:

相关推荐
Biomamba生信基地16 小时前
R语言基础| 下载、安装
开发语言·r语言·生信·医药
Chef_Chen1 天前
从0开始学习R语言--Day20-ARIMA与格兰杰因果检验
开发语言·学习·r语言
善木科研3 天前
读文献先读图:GO弦图怎么看?
机器学习·数据分析·r语言
Tiger Z3 天前
R 语言科研绘图第 55 期 --- 网络图-聚类
开发语言·r语言·贴图
十三画者3 天前
【数据分析】R版IntelliGenes用于生物标志物发现的可解释机器学习
python·机器学习·数据挖掘·数据分析·r语言·数据可视化
lishaoan776 天前
实验设计与分析(第6版,Montgomery著,傅珏生译) 第10章拟合回归模型10.9节思考题10.12 R语言解题
回归·r语言·线性回归·残差分析·实验设计与数据分析·回归显著性
南瓜胖胖6 天前
【R语言编程绘图-mlbench】
开发语言·机器学习·r语言
天桥下的卖艺者6 天前
R语言使用随机过采样(Random Oversampling)平衡数据集
开发语言·r语言
Biomamba生信基地7 天前
R语言基础| 创建数据集
开发语言·r语言·生信·医药
lishaoan777 天前
实验设计与分析(第6版,Montgomery)第5章析因设计引导5.7节思考题5.19 R语言解题
r语言·方差分析·实验设计与分析·残差分析·正态假设·交互作用