优化数据以避免 “数据基本上是常数” 错误的 t.test。

huangapple go评论104阅读模式
英文:

Optimize data for t.test to avoid "data are essentially constant" error

问题

有关在R中使用t.test()时出现错误消息“数据基本上是恒定的”的情况,有几个StackOverflow帖子讨论了这个问题,这是因为组之间没有足够的差异(没有变化)来运行t.test()。(如果有其他原因,请纠正我)

我现在处于这种情况,我想通过改变我的数据以使数据的统计特性不发生 drastical 改变来解决这个问题,这样 t-检验结果仍然正确。我想知道如果我向数据中添加一些非常小的变化(例如将 0.301029995663981 更改为 0.301029995663990),或者还能做些什么?

例如,这是我的数据:

  1. # 创建数据框
  2. data <- data.frame(Date = c("2021.08","2021.08","2021.09","2021.09","2021.09","2021.10","2021.10","2021.10","2021.11","2021.11","2021.11","2021.11","2021.11","2021.12","2021.12","2022.01","2022.01","2022.01","2022.01","2022.08","2022.08","2022.08","2022.08","2022.08","2022.09","2022.09","2022.10","2022.10","2022.10","2022.11","2022.11","2022.11","2022.11","2022.11","2022.12","2022.12","2022.12","2022.12","2023.01","2023.01","2023.01","2023.01"),
  3. Species = c("A","A","A","A","A","A","A","A","A","A","A","A","A","A","A","A","A","A","A","A","A","A","A","A","A","A","A","A","A","A","A","A","A","A","A","A","A","A","A","A","A","A","A","A","A","A","A","A","A","A","A","A","A","A","A","A","A"),
  4. Site = c("Something","Something","Something","Something","Something","Something","Something","Something","Something","Something","Something","Something","Something","Something","Something","Something","Something","Something","Something","Something","Something","Something","Something","Something","Something","Something","Something","Something","Something","Something","Something","Something","Something","Something","Something","Something","Something","Something","Something","Something","Something","Something","Something","Something","Something","Something","Something","Something","Something","Something","Something","Something"),
  5. Mean = c("0.301029995663981","1.07918124604762","0.698970004336019","1.23044892137827","1.53147891704226","1.41497334797082","1.7160033436348",
  6. "0.698970004336019","1.39794000867204","1","0.301029995663981","0.301029995663981","0.477121254719662","0.301029995663981","0.301029995663981",
  7. "0.301029995663981","0.477121254719662","0.301029995663981","0.301029995663981","0.845098040014257","0.301029995663981","0.301029995663981",
  8. "0.477121254719662","0.698970004336019","1.23044892137827","1.41497334797082","1.95904139232109","1.5910646070265","1.53147891704226",
  9. "1.14612803567824","1.57978359661681","1.34242268082221","0.778151250383644","0.301029995663981","0.301029995663981","0.477121254719662",
  10. "0.301029995663981","1.20411998265592","0.845098040014257","1.17609125905568","1.20411998265592","0.698970004336019","0.301029995663981",
  11. "0.698970004336019","0.698970004336019","0.903089986991944","1.14612803567824","0.301029995663981","0.602059991327962","0.301029995663981",
  12. "0.845098040014257","0.698970004336019","0.698970004336019","0.301029995663981","0.698970004336019","0.301029995663981","0.301029995663981",
  13. "0.301029995663981","0.301029995663981","0.301029995663981","0.602059991327962","0.301029995663981","0.845098040014257","1.92941892571429",
  14. "1.27875360095283","0.698970004336019","1.38021124171161","1.20411998265592","1.38021124171161","1.14612803567824","1","1.07918124604762",
  15. "1.17609125905568","0.845098040014257","0.698970004336019","0.778151250383644","0.301029995663981","0.845098040014257","1.64345267648619",
  16. "1.46239799789896","1.34242268082221","1.34242268082221","0.778151250383644"))

然后,我设置了因子:

  1. # 设置因子
  2. str(data)
  3. data$Date<-as.factor(data$Date)
  4. data$Site<-as.factor(data$Site)
  5. data$Species<-as.factor(data$Species)
  6. data$Mean<-as.numeric(data$Mean)
  7. str(data)

当我尝试使用t.test()时:

  1. compare_means(Mean ~ Species, data = data, group.b = "Date", method = "t.test")

会出现以下错误:

  1. 错误 in `mutate()`:
  2. In argument: `p = purrr::map(...)`.
  3. Caused by error in `purrr::map()`:
  4. In index: 5.
  5. With name: Date.2021.12.
  6. Caused by error in `t.test.default()`:
  7. ! data are essentially constant
  8. Run `rlang::last_trace()` to see where the error occurred.

类似地,在ggplot中使用这个:

  1. <details>
  2. <summary>英文:</summary>
  3. There are several StackOverflow posts about situation where t.test() in R produce an error saying &quot;data are essentially constant&quot;, this is due to that there is not enough difference between the groups (there is no variation) to run the t.test(). (Correct me if there is something else)
  4. I&#39;m in this situation, and I would like to fix this buy altering my data the way the statistical features of the data don&#39;t change drastically, so the t-test stays correct. I was wondering what if I add some very little variation to the data (e.g. change 0.301029995663981 to 0.301029995663990), or what else can I do?
  5. For example, this is my data:
  6. # Create the data frame
  7. data &lt;- data.frame(Date = c(&quot;2021.08&quot;,&quot;2021.08&quot;,&quot;2021.09&quot;,&quot;2021.09&quot;,&quot;2021.09&quot;,&quot;2021.10&quot;,&quot;2021.10&quot;,&quot;2021.10&quot;,&quot;2021.11&quot;,&quot;2021.11&quot;,&quot;2021.11&quot;,&quot;2021.11&quot;,&quot;2021.11&quot;,&quot;2021.12&quot;,&quot;2021.12&quot;,&quot;2022.01&quot;,&quot;2022.01&quot;,&quot;2022.01&quot;,&quot;2022.01&quot;,&quot;2022.08&quot;,&quot;2022.08&quot;,&quot;2022.08&quot;,&quot;2022.08&quot;,&quot;2022.08&quot;,&quot;2022.09&quot;,&quot;2022.09&quot;,&quot;2022.10&quot;,&quot;2022.10&quot;,&quot;2022.10&quot;,&quot;2022.11&quot;,&quot;2022.11&quot;,&quot;2022.11&quot;,&quot;2022.11&quot;,&quot;2022.11&quot;,&quot;2022.12&quot;,&quot;2022.12&quot;,&quot;2022.12&quot;,&quot;2022.12&quot;,&quot;2023.01&quot;,&quot;2023.01&quot;,&quot;2023.01&quot;,&quot;2023.01&quot;,&quot;2021.08&quot;,&quot;2021.08&quot;,&quot;2021.09&quot;,&quot;2021.09&quot;,&quot;2021.09&quot;,&quot;2021.10&quot;,&quot;2021.10&quot;,&quot;2021.10&quot;,&quot;2021.11&quot;,&quot;2021.11&quot;,&quot;2021.11&quot;,&quot;2021.11&quot;,&quot;2021.11&quot;,&quot;2021.12&quot;,&quot;2021.12&quot;,&quot;2022.01&quot;,&quot;2022.01&quot;,&quot;2022.01&quot;,&quot;2022.01&quot;,&quot;2022.08&quot;,&quot;2022.08&quot;,&quot;2022.08&quot;,&quot;2022.08&quot;,&quot;2022.08&quot;,&quot;2022.09&quot;,&quot;2022.09&quot;,&quot;2022.09&quot;,&quot;2022.09&quot;,&quot;2022.10&quot;,&quot;2022.10&quot;,&quot;2022.10&quot;,&quot;2022.10&quot;,&quot;2022.11&quot;,&quot;2022.11&quot;,&quot;2022.11&quot;,&quot;2022.11&quot;,&quot;2022.11&quot;,&quot;2022.12&quot;,&quot;2022.12&quot;,&quot;2022.12&quot;,&quot;2022.12&quot;,&quot;2023.01&quot;,&quot;2023.01&quot;,&quot;2023.01&quot;,&quot;2023.01&quot;),
  8. Species = c(&quot;A&quot;,&quot;A&quot;,&quot;A&quot;,&quot;A&quot;,&quot;A&quot;,&quot;A&quot;,&quot;A&quot;,&quot;A&quot;,&quot;A&quot;,&quot;A&quot;,&quot;A&quot;,&quot;A&quot;,&quot;A&quot;,&quot;A&quot;,&quot;A&quot;,&quot;A&quot;,&quot;A&quot;,&quot;A&quot;,&quot;A&quot;,&quot;A&quot;,&quot;A&quot;,&quot;A&quot;,&quot;A&quot;,&quot;A&quot;,&quot;A&quot;,&quot;A&quot;,&quot;A&quot;,&quot;A&quot;,&quot;A&quot;,&quot;A&quot;,&quot;A&quot;,&quot;A&quot;,&quot;A&quot;,
  9. &quot;A&quot;,&quot;A&quot;,&quot;A&quot;,&quot;A&quot;,&quot;A&quot;,&quot;A&quot;,&quot;A&quot;,&quot;A&quot;,&quot;A&quot;,&quot;B&quot;,&quot;B&quot;,&quot;B&quot;,&quot;B&quot;,&quot;B&quot;,&quot;B&quot;,&quot;B&quot;,&quot;B&quot;,&quot;B&quot;,&quot;B&quot;,&quot;B&quot;,&quot;B&quot;,&quot;B&quot;,&quot;B&quot;,&quot;B&quot;,&quot;B&quot;,&quot;B&quot;,&quot;B&quot;,&quot;B&quot;,&quot;B&quot;,&quot;B&quot;,&quot;B&quot;,&quot;B&quot;,&quot;B&quot;,&quot;B&quot;,&quot;B&quot;,&quot;B&quot;,
  10. &quot;B&quot;,&quot;B&quot;,&quot;B&quot;,&quot;B&quot;,&quot;B&quot;,&quot;B&quot;,&quot;B&quot;,&quot;B&quot;,&quot;B&quot;,&quot;B&quot;,&quot;B&quot;,&quot;B&quot;,&quot;B&quot;,&quot;B&quot;,&quot;B&quot;,&quot;B&quot;,&quot;B&quot;,&quot;B&quot;),
  11. Site = c(&quot;Something&quot;,&quot;Something&quot;,&quot;Something&quot;,&quot;Something&quot;,&quot;Something&quot;,&quot;Something&quot;,&quot;Something&quot;,&quot;Something&quot;,&quot;Something&quot;,&quot;Something&quot;,&quot;Something&quot;,
  12. &quot;Something&quot;,&quot;Something&quot;,&quot;Something&quot;,&quot;Something&quot;,&quot;Something&quot;,&quot;Something&quot;,&quot;Something&quot;,&quot;Something&quot;,&quot;Something&quot;,&quot;Something&quot;,&quot;Something&quot;,&quot;Something&quot;,
  13. &quot;Something&quot;,&quot;Something&quot;,&quot;Something&quot;,&quot;Something&quot;,&quot;Something&quot;,&quot;Something&quot;,&quot;Something&quot;,&quot;Something&quot;,&quot;Something&quot;,&quot;Something&quot;,&quot;Something&quot;,&quot;Something&quot;,
  14. &quot;Something&quot;,&quot;Something&quot;,&quot;Something&quot;,&quot;Something&quot;,&quot;Something&quot;,&quot;Something&quot;,&quot;Something&quot;,&quot;Something&quot;,&quot;Something&quot;,&quot;Something&quot;,&quot;Something&quot;,&quot;Something&quot;,
  15. &quot;Something&quot;,&quot;Something&quot;,&quot;Something&quot;,&quot;Something&quot;,&quot;Something&quot;,&quot;Something&quot;,&quot;Something&quot;,&quot;Something&quot;,&quot;Something&quot;,&quot;Something&quot;,&quot;Something&quot;,&quot;Something&quot;,
  16. &quot;Something&quot;,&quot;Something&quot;,&quot;Something&quot;,&quot;Something&quot;,&quot;Something&quot;,&quot;Something&quot;,&quot;Something&quot;,&quot;Something&quot;,&quot;Something&quot;,&quot;Something&quot;,&quot;Something&quot;,&quot;Something&quot;,
  17. &quot;Something&quot;,&quot;Something&quot;,&quot;Something&quot;,&quot;Something&quot;,&quot;Something&quot;,&quot;Something&quot;,&quot;Something&quot;,&quot;Something&quot;,&quot;Something&quot;,&quot;Something&quot;,&quot;Something&quot;,&quot;Something&quot;,
  18. &quot;Something&quot;,&quot;Something&quot;,&quot;Something&quot;,&quot;Something&quot;),
  19. Mean = c(&quot;0.301029995663981&quot;,&quot;1.07918124604762&quot;,&quot;0.698970004336019&quot;,&quot;1.23044892137827&quot;,&quot;1.53147891704226&quot;,&quot;1.41497334797082&quot;,&quot;1.7160033436348&quot;,
  20. &quot;0.698970004336019&quot;,&quot;1.39794000867204&quot;,&quot;1&quot;,&quot;0.301029995663981&quot;,&quot;0.301029995663981&quot;,&quot;0.477121254719662&quot;,&quot;0.301029995663981&quot;,&quot;0.301029995663981&quot;,
  21. &quot;0.301029995663981&quot;,&quot;0.477121254719662&quot;,&quot;0.301029995663981&quot;,&quot;0.301029995663981&quot;,&quot;0.845098040014257&quot;,&quot;0.301029995663981&quot;,&quot;0.301029995663981&quot;,
  22. &quot;0.477121254719662&quot;,&quot;0.698970004336019&quot;,&quot;1.23044892137827&quot;,&quot;1.41497334797082&quot;,&quot;1.95904139232109&quot;,&quot;1.5910646070265&quot;,&quot;1.53147891704226&quot;,
  23. &quot;1.14612803567824&quot;,&quot;1.57978359661681&quot;,&quot;1.34242268082221&quot;,&quot;0.778151250383644&quot;,&quot;0.301029995663981&quot;,&quot;0.301029995663981&quot;,&quot;0.477121254719662&quot;,
  24. &quot;0.301029995663981&quot;,&quot;1.20411998265592&quot;,&quot;0.845098040014257&quot;,&quot;1.17609125905568&quot;,&quot;1.20411998265592&quot;,&quot;0.698970004336019&quot;,&quot;0.301029995663981&quot;,
  25. &quot;0.698970004336019&quot;,&quot;0.698970004336019&quot;,&quot;0.903089986991944&quot;,&quot;1.14612803567824&quot;,&quot;0.301029995663981&quot;,&quot;0.602059991327962&quot;,&quot;0.301029995663981&quot;,
  26. &quot;0.845098040014257&quot;,&quot;0.698970004336019&quot;,&quot;0.698970004336019&quot;,&quot;0.301029995663981&quot;,&quot;0.698970004336019&quot;,&quot;0.301029995663981&quot;,&quot;0.301029995663981&quot;,
  27. &quot;0.301029995663981&quot;,&quot;0.477121254719662&quot;,&quot;0.301029995663981&quot;,&quot;0.301029995663981&quot;,&quot;0.301029995663981&quot;,&quot;0.301029995663981&quot;,&quot;0.301029995663981&quot;,
  28. &quot;0.602059991327962&quot;,&quot;0.301029995663981&quot;,&quot;0.845098040014257&quot;,&quot;1.92941892571429&quot;,&quot;1.27875360095283&quot;,&quot;0.698970004336019&quot;,&quot;1.38021124171161&quot;,
  29. &quot;1.20411998265592&quot;,&quot;1.38021124171161&quot;,&quot;1.14612803567824&quot;,&quot;1&quot;,&quot;1.07918124604762&quot;,&quot;1.17609125905568&quot;,&quot;0.845098040014257&quot;,&quot;0.698970004336019&quot;,
  30. &quot;0.778151250383644&quot;,&quot;0.301029995663981&quot;,&quot;0.845098040014257&quot;,&quot;1.64345267648619&quot;,&quot;1.46239799789896&quot;,&quot;1.34242268082221&quot;,&quot;1.34242268082221&quot;,
  31. &quot;0.778151250383644&quot;))
  32. After, I set the factors:
  33. # Set factors
  34. str(data)
  35. data$Date&lt;-as.factor(data$Date)
  36. data$Site&lt;-as.factor(data$Site)
  37. data$Species&lt;-as.factor(data$Species)
  38. data$Mean&lt;-as.numeric(data$Mean)
  39. str(data)
  40. When I try t.test():
  41. compare_means(Mean ~ Species, data = data, group.b = &quot;Date&quot;, method = &quot;t.test&quot;)
  42. This is the error:
  43. Error in `mutate()`:
  44. ℹ In argument: `p = purrr::map(...)`.
  45. Caused by error in `purrr::map()`:
  46. ℹ In index: 5.
  47. ℹ With name: Date.2021.12.
  48. Caused by error in `t.test.default()`:
  49. ! data are essentially constant
  50. Run `rlang::last_trace()` to see where the error occurred.
  51. Similarly, when I use this in ggplot:
  52. ggplot(data, aes(x = Date, y = Mean, fill=Species)) +
  53. geom_boxplot()+
  54. stat_compare_means(data=data,method=&quot;t.test&quot;, label = &quot;p.signif&quot;) +
  55. theme(axis.text.x = element_text(angle = 90, vjust = 0.5, hjust=1))
  56. Warning message:
  57. Computation failed in `stat_compare_means()`
  58. Caused by error in `mutate()`:
  59. ℹ In argument: `p = purrr::map(...)`.
  60. Caused by error in `purrr::map()`:
  61. ℹ In index: 5.
  62. ℹ With name: x.5.
  63. Caused by error in `t.test.default()`:
  64. ! data are essentially constant
  65. What is the best solution, which keeps the data still usable in t-test?
  66. </details>
  67. # 答案1
  68. **得分**: 1
  69. 针对每个日期-物种组合找到`Mean`的标准差,然后筛选掉任何标准差为0的日期,这样就可以实现。您甚至可以将筛选后的数据传递给`compare_means()`函数:
  70. ``` r
  71. library(dplyr)
  72. library(ggpubr)
  73. data <- data.frame(Date = c("2021.08","2021.08","2021.09","2021.09","2021.09","2021.10","2021.10","2021.10","2021.11","2021.11","2021.11","2021.11","2021.11","2021.12","2021.12","2022.01","2022.01","2022.01","2022.01","2022.08","2022.08","2022.08","2022.08","2022.08","2022.09","2022.09","2022.10","2022.10","2022.10","2022.11","2022.11","2022.11","2022.11","2022.11","2022.12","2022.12","2022.12","2022.12","2023.01","2023.01","2023.01","2023.01"),
  74. Species = c("A","A","A","A","A","A","A","A","A","A","A","A","A","A","A","A","A","A","A","A","A","A","A","A","A","A","A","A","A","A","A","A","B","B","B","B","B","B","B","B","B","B","B","B","B","B","B","B","B"),
  75. Site = c("Something","Something","Something","Something","Something","Something","Something","Something","Something","Something","Something","Something","Something","Something","Something","Something","Something","Something","Something","Something","Something","Something","Something","Something","Something","Something","Something","Something","Something","Something","Something","Something","Something","Something","Something","Something","Something","Something","Something","Something","Something","Something","Something","Something","Something","Something","Something","Something","Something","Something","Something","Something"),
  76. Mean = c("0.301029995663981","1.07918124604762","0.698970004336019","1.23044892137827","1.53147891704226","1.41497334797082","1.7160033436348","0.698970004336019","1.39794000867204","1","0.301029995663981","0.301029995663981","0.477121254719662","0.301029995663981","0.301029995663981","0.301029995663981","0.477121254719662","0.301029995663981","0.301029995663981","0.845098040014257","0.301029995663981","0.301029995663981","0.477121254719662","0.698970004336019","1.23044892137827","1.41497334797082","1.95904139232109","1.5910646070265","1.53147891704226","1.14612803567824","1.57978359661681","1.34242268082221","0.778151250383644","0.301029995663981","0.301029995663981","0.477121254719662","0.301029995663981","1.20411998265592","0.845098040014257","1.17609125905568","1.20411998265592","0.698970004336019","0.301029995663981","0.698970004336019","0.698970004336019","0.903089986991944","1.14612803567824","0.301029995663981","0.602059991327962","0.301029995663981","0.845098040014257","0.698970004336019","0.698970004336019","0.301029995663981","0.698970004336019","0.301029995663981","0.301029995663981","0.301029995663981","0.477121254719662","0.301029995663981","0.301029995663981","0.301029995663981","0.301029995663981","0.301029995663981","0.602059991327962","0.301029995663981","0.845098040014257","1.92941892571429","1.27875360095283","0.698970004336019","1.38021124171161","1.20411998265592","1.38021124171161","1.14612803567824","1","1.07918124604762","1.17609125905568","0.845098040014257","0.698970004336019","0.778151250383644","0.301029995663981","0.845098040014257","1.64345267648619","1.46239799789896","1.34242268082221","1.34242268082221","0.778151250383644"))
  77. data$Date <- as.factor(data$Date)
  78. data$Site <- as.factor(data$Site)
  79. data$Species <- as.factor(data$Species)
  80. data$Mean <- as.numeric(data$Mean)
  81. data %>%
  82. group_by(Date, Species) %>%
  83. mutate(s = sd(Mean)) %>%
  84. group_by(Date) %>%
  85. filter(!any(s == 0)) %>%
  86. compare_means(Mean ~ Species, data = ., group.b = "Date", method = "t.test")
  87. #> # A tibble: 11 × 9
  88. #> Date .y. group1 group2 p p.adj p.format p.signif method
  89. #> <fct> <chr> <chr> <chr> <dbl> <dbl> <chr> <chr> <chr>
  90. #> 1 2021.08 Mean A B 0.718 1 0.718 ns T-test
  91. #> 2 2021.09 Mean A B 0.451 1 0.451 ns T-test
  92. #> 3 2021.10 Mean A B 0.0889 0.89 0.089 ns T-test
  93. #> 4 2021.11 Mean A B 0.850 1 0.850 ns T-test
  94. #> 5 2022.01 Mean A B
  95. <details>
  96. <summary>英文:</summary>
  97. Finding the sd of `Mean` for each Date-Species combination and then filtering out any Dates where any sd is 0 will do the trick. You could even just pipe the filtered data to `compare_means()`:
  98. ``` r
  99. library(dplyr)
  100. library(ggpubr)
  101. data &lt;- data.frame(Date = c(&quot;2021.08&quot;,&quot;2021.08&quot;,&quot;2021.09&quot;,&quot;2021.09&quot;,&quot;2021.09&quot;,&quot;2021.10&quot;,&quot;2021.10&quot;,&quot;2021.10&quot;,&quot;2021.11&quot;,&quot;2021.11&quot;,&quot;2021.11&quot;,&quot;2021.11&quot;,&quot;2021.11&quot;,&quot;2021.12&quot;,&quot;2021.12&quot;,&quot;2022.01&quot;,&quot;2022.01&quot;,&quot;2022.01&quot;,&quot;2022.01&quot;,&quot;2022.08&quot;,&quot;2022.08&quot;,&quot;2022.08&quot;,&quot;2022.08&quot;,&quot;2022.08&quot;,&quot;2022.09&quot;,&quot;2022.09&quot;,&quot;2022.10&quot;,&quot;2022.10&quot;,&quot;2022.10&quot;,&quot;2022.11&quot;,&quot;2022.11&quot;,&quot;2022.11&quot;,&quot;2022.11&quot;,&quot;2022.11&quot;,&quot;2022.12&quot;,&quot;2022.12&quot;,&quot;2022.12&quot;,&quot;2022.12&quot;,&quot;2023.01&quot;,&quot;2023.01&quot;,&quot;2023.01&quot;,&quot;2023.01&quot;,&quot;2021.08&quot;,&quot;2021.08&quot;,&quot;2021.09&quot;,&quot;2021.09&quot;,&quot;2021.09&quot;,&quot;2021.10&quot;,&quot;2021.10&quot;,&quot;2021.10&quot;,&quot;2021.11&quot;,&quot;2021.11&quot;,&quot;2021.11&quot;,&quot;2021.11&quot;,&quot;2021.11&quot;,&quot;2021.12&quot;,&quot;2021.12&quot;,&quot;2022.01&quot;,&quot;2022.01&quot;,&quot;2022.01&quot;,&quot;2022.01&quot;,&quot;2022.08&quot;,&quot;2022.08&quot;,&quot;2022.08&quot;,&quot;2022.08&quot;,&quot;2022.08&quot;,&quot;2022.09&quot;,&quot;2022.09&quot;,&quot;2022.09&quot;,&quot;2022.09&quot;,&quot;2022.10&quot;,&quot;2022.10&quot;,&quot;2022.10&quot;,&quot;2022.10&quot;,&quot;2022.11&quot;,&quot;2022.11&quot;,&quot;2022.11&quot;,&quot;2022.11&quot;,&quot;2022.11&quot;,&quot;2022.12&quot;,&quot;2022.12&quot;,&quot;2022.12&quot;,&quot;2022.12&quot;,&quot;2023.01&quot;,&quot;2023.01&quot;,&quot;2023.01&quot;,&quot;2023.01&quot;),
  102. Species = c(&quot;A&quot;,&quot;A&quot;,&quot;A&quot;,&quot;A&quot;,&quot;A&quot;,&quot;A&quot;,&quot;A&quot;,&quot;A&quot;,&quot;A&quot;,&quot;A&quot;,&quot;A&quot;,&quot;A&quot;,&quot;A&quot;,&quot;A&quot;,&quot;A&quot;,&quot;A&quot;,&quot;A&quot;,&quot;A&quot;,&quot;A&quot;,&quot;A&quot;,&quot;A&quot;,&quot;A&quot;,&quot;A&quot;,&quot;A&quot;,&quot;A&quot;,&quot;A&quot;,&quot;A&quot;,&quot;A&quot;,&quot;A&quot;,&quot;A&quot;,&quot;A&quot;,&quot;A&quot;,&quot;A&quot;,
  103. &quot;A&quot;,&quot;A&quot;,&quot;A&quot;,&quot;A&quot;,&quot;A&quot;,&quot;A&quot;,&quot;A&quot;,&quot;A&quot;,&quot;A&quot;,&quot;B&quot;,&quot;B&quot;,&quot;B&quot;,&quot;B&quot;,&quot;B&quot;,&quot;B&quot;,&quot;B&quot;,&quot;B&quot;,&quot;B&quot;,&quot;B&quot;,&quot;B&quot;,&quot;B&quot;,&quot;B&quot;,&quot;B&quot;,&quot;B&quot;,&quot;B&quot;,&quot;B&quot;,&quot;B&quot;,&quot;B&quot;,&quot;B&quot;,&quot;B&quot;,&quot;B&quot;,&quot;B&quot;,&quot;B&quot;,&quot;B&quot;,&quot;B&quot;,&quot;B&quot;,
  104. &quot;B&quot;,&quot;B&quot;,&quot;B&quot;,&quot;B&quot;,&quot;B&quot;,&quot;B&quot;,&quot;B&quot;,&quot;B&quot;,&quot;B&quot;,&quot;B&quot;,&quot;B&quot;,&quot;B&quot;,&quot;B&quot;,&quot;B&quot;,&quot;B&quot;,&quot;B&quot;,&quot;B&quot;,&quot;B&quot;),
  105. Site = c(&quot;Something&quot;,&quot;Something&quot;,&quot;Something&quot;,&quot;Something&quot;,&quot;Something&quot;,&quot;Something&quot;,&quot;Something&quot;,&quot;Something&quot;,&quot;Something&quot;,&quot;Something&quot;,&quot;Something&quot;,
  106. &quot;Something&quot;,&quot;Something&quot;,&quot;Something&quot;,&quot;Something&quot;,&quot;Something&quot;,&quot;Something&quot;,&quot;Something&quot;,&quot;Something&quot;,&quot;Something&quot;,&quot;Something&quot;,&quot;Something&quot;,&quot;Something&quot;,
  107. &quot;Something&quot;,&quot;Something&quot;,&quot;Something&quot;,&quot;Something&quot;,&quot;Something&quot;,&quot;Something&quot;,&quot;Something&quot;,&quot;Something&quot;,&quot;Something&quot;,&quot;Something&quot;,&quot;Something&quot;,&quot;Something&quot;,
  108. &quot;Something&quot;,&quot;Something&quot;,&quot;Something&quot;,&quot;Something&quot;,&quot;Something&quot;,&quot;Something&quot;,&quot;Something&quot;,&quot;Something&quot;,&quot;Something&quot;,&quot;Something&quot;,&quot;Something&quot;,&quot;Something&quot;,
  109. &quot;Something&quot;,&quot;Something&quot;,&quot;Something&quot;,&quot;Something&quot;,&quot;Something&quot;,&quot;Something&quot;,&quot;Something&quot;,&quot;Something&quot;,&quot;Something&quot;,&quot;Something&quot;,&quot;Something&quot;,&quot;Something&quot;,
  110. &quot;Something&quot;,&quot;Something&quot;,&quot;Something&quot;,&quot;Something&quot;,&quot;Something&quot;,&quot;Something&quot;,&quot;Something&quot;,&quot;Something&quot;,&quot;Something&quot;,&quot;Something&quot;,&quot;Something&quot;,&quot;Something&quot;,
  111. &quot;Something&quot;,&quot;Something&quot;,&quot;Something&quot;,&quot;Something&quot;,&quot;Something&quot;,&quot;Something&quot;,&quot;Something&quot;,&quot;Something&quot;,&quot;Something&quot;,&quot;Something&quot;,&quot;Something&quot;,&quot;Something&quot;,
  112. &quot;Something&quot;,&quot;Something&quot;,&quot;Something&quot;,&quot;Something&quot;),
  113. Mean = c(&quot;0.301029995663981&quot;,&quot;1.07918124604762&quot;,&quot;0.698970004336019&quot;,&quot;1.23044892137827&quot;,&quot;1.53147891704226&quot;,&quot;1.41497334797082&quot;,&quot;1.7160033436348&quot;,
  114. &quot;0.698970004336019&quot;,&quot;1.39794000867204&quot;,&quot;1&quot;,&quot;0.301029995663981&quot;,&quot;0.301029995663981&quot;,&quot;0.477121254719662&quot;,&quot;0.301029995663981&quot;,&quot;0.301029995663981&quot;,
  115. &quot;0.301029995663981&quot;,&quot;0.477121254719662&quot;,&quot;0.301029995663981&quot;,&quot;0.301029995663981&quot;,&quot;0.845098040014257&quot;,&quot;0.301029995663981&quot;,&quot;0.301029995663981&quot;,
  116. &quot;0.477121254719662&quot;,&quot;0.698970004336019&quot;,&quot;1.23044892137827&quot;,&quot;1.41497334797082&quot;,&quot;1.95904139232109&quot;,&quot;1.5910646070265&quot;,&quot;1.53147891704226&quot;,
  117. &quot;1.14612803567824&quot;,&quot;1.57978359661681&quot;,&quot;1.34242268082221&quot;,&quot;0.778151250383644&quot;,&quot;0.301029995663981&quot;,&quot;0.301029995663981&quot;,&quot;0.477121254719662&quot;,
  118. &quot;0.301029995663981&quot;,&quot;1.20411998265592&quot;,&quot;0.845098040014257&quot;,&quot;1.17609125905568&quot;,&quot;1.20411998265592&quot;,&quot;0.698970004336019&quot;,&quot;0.301029995663981&quot;,
  119. &quot;0.698970004336019&quot;,&quot;0.698970004336019&quot;,&quot;0.903089986991944&quot;,&quot;1.14612803567824&quot;,&quot;0.301029995663981&quot;,&quot;0.602059991327962&quot;,&quot;0.301029995663981&quot;,
  120. &quot;0.845098040014257&quot;,&quot;0.698970004336019&quot;,&quot;0.698970004336019&quot;,&quot;0.301029995663981&quot;,&quot;0.698970004336019&quot;,&quot;0.301029995663981&quot;,&quot;0.301029995663981&quot;,
  121. &quot;0.301029995663981&quot;,&quot;0.477121254719662&quot;,&quot;0.301029995663981&quot;,&quot;0.301029995663981&quot;,&quot;0.301029995663981&quot;,&quot;0.301029995663981&quot;,&quot;0.301029995663981&quot;,
  122. &quot;0.602059991327962&quot;,&quot;0.301029995663981&quot;,&quot;0.845098040014257&quot;,&quot;1.92941892571429&quot;,&quot;1.27875360095283&quot;,&quot;0.698970004336019&quot;,&quot;1.38021124171161&quot;,
  123. &quot;1.20411998265592&quot;,&quot;1.38021124171161&quot;,&quot;1.14612803567824&quot;,&quot;1&quot;,&quot;1.07918124604762&quot;,&quot;1.17609125905568&quot;,&quot;0.845098040014257&quot;,&quot;0.698970004336019&quot;,
  124. &quot;0.778151250383644&quot;,&quot;0.301029995663981&quot;,&quot;0.845098040014257&quot;,&quot;1.64345267648619&quot;,&quot;1.46239799789896&quot;,&quot;1.34242268082221&quot;,&quot;1.34242268082221&quot;,
  125. &quot;0.778151250383644&quot;))
  1. data$Date&lt;-as.factor(data$Date)
  2. data$Site&lt;-as.factor(data$Site)
  3. data$Species&lt;-as.factor(data$Species)
  4. data$Mean&lt;-as.numeric(data$Mean)
  5. data %&gt;%
  6. group_by(Date, Species) %&gt;%
  7. mutate(s = sd(Mean)) %&gt;%
  8. group_by(Date) %&gt;%
  9. filter(!any(s == 0)) %&gt;%
  10. compare_means(Mean ~ Species, data = ., group.b = &quot;Date&quot;, method = &quot;t.test&quot;)
  11. #&gt; # A tibble: 11 &#215; 9
  12. #&gt; Date .y. group1 group2 p p.adj p.format p.signif method
  13. #&gt; &lt;fct&gt; &lt;chr&gt; &lt;chr&gt; &lt;chr&gt; &lt;dbl&gt; &lt;dbl&gt; &lt;chr&gt; &lt;chr&gt; &lt;chr&gt;
  14. #&gt; 1 2021.08 Mean A B 0.718 1 0.718 ns T-test
  15. #&gt; 2 2021.09 Mean A B 0.451 1 0.451 ns T-test
  16. #&gt; 3 2021.10 Mean A B 0.0889 0.89 0.089 ns T-test
  17. #&gt; 4 2021.11 Mean A B 0.850 1 0.850 ns T-test
  18. #&gt; 5 2022.01 Mean A B 1 1 1.000 ns T-test
  19. #&gt; 6 2022.08 Mean A B 0.234 1 0.234 ns T-test
  20. #&gt; 7 2022.09 Mean A B 0.670 1 0.670 ns T-test
  21. #&gt; 8 2022.10 Mean A B 0.0707 0.78 0.071 ns T-test
  22. #&gt; 9 2022.11 Mean A B 0.783 1 0.783 ns T-test
  23. #&gt; 10 2022.12 Mean A B 0.399 1 0.399 ns T-test
  24. #&gt; 11 2023.01 Mean A B 0.255 1 0.255 ns T-test

<sup>Created on 2023-06-01 with reprex v2.0.2</sup>

huangapple
  • 本文由 发表于 2023年6月1日 21:25:00
  • 转载请务必保留本文链接:https://go.coder-hub.com/76382379.html
匿名

发表评论

匿名网友

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen:

确定