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.输出结果:

相关推荐
LabEx14 小时前
科研数据可视化核心技术:基于 AI 与 R 语言的热图、火山图及网络图绘制实践指南
人工智能·信息可视化·r语言·r语言绘图·乐备实·labex·科研数据绘图
Jet450515 小时前
第100+43步 ChatGPT学习:R语言实现特征选择曲线图
学习·chatgpt·r语言
Chef_Chen20 小时前
从0开始学习R语言--Day40--Kruskal-Wallis检验
开发语言·学习·r语言
quant_19861 天前
R语言如何接入实时行情接口
开发语言·经验分享·笔记·python·websocket·金融·r语言
小白学大数据2 天前
R语言爬虫实战:如何爬取分页链接并批量保存
开发语言·爬虫·信息可视化·r语言
开开心心_Every3 天前
便捷的Office批量转PDF工具
开发语言·人工智能·r语言·pdf·c#·音视频·symfony
Chef_Chen5 天前
从0开始学习R语言--Day39--Spearman 秩相关
开发语言·学习·r语言
q567315237 天前
R语言初学者爬虫简单模板
开发语言·爬虫·r语言·iphone
shootero@126.com8 天前
R语言开发记录,二(创建R包)
r语言
shootero@126.com8 天前
R语言开发记录,一
开发语言·r语言