将 ConoverTest 的列表输出更改为 R 中的数据帧

问题描述 投票:0回答:1

我需要从库(DescTools)的 ConoverTest() 函数生成的输出来生成数据帧输出而不是列表。我需要这个,因为我将运行多个测试并提取 p.val 和平均排名差异模型输出。

这是我得到的当前输出

  
  # fake data
  set.seed(123)
  df <- data.frame(
    Value = rnorm(15),
    STATION = rep(c("A", "B", "C"), each = 5)
  )
  
  # the function
  final.test.result.post <- ConoverTest(df$Value, df$STATION, out.list = TRUE)
  
  final.test.result.post


>   final.test.result.post

# Conover's test of multiple comparisons : holm  

 #   mean.rank.diff   pval    
#B-A           -0.4 0.8738    
#C-A           -5.6 0.1271    
#C-B           -5.2 0.1271    
#---
#Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1

有没有办法将其转换为具有列(cross,mean.rank.diff,pval)的数据框

r kruskal-wallis desctools
1个回答
0
投票

我无法复制您获得的 p 值,但您可以执行以下操作:

df <- final.test.result.post[[1]] |>
    as.data.frame() |>
    tibble::rownames_to_column(var = "cross")

print(df)
  cross mean rank diff pval
1   B-A           -0.8    1
2   C-A            1.4    1
3   C-B            2.2    1
© www.soinside.com 2019 - 2024. All rights reserved.