进行 t 检验时 R 中 “%>%” 和 “|>” 的互换性 [重复]

The interchangeability of "%>%" and "|>" in R when conducting t-test [duplicate]

提问人:Pasrakan 提问时间:9/5/2023 最后编辑:MaëlPasrakan 更新时间:9/5/2023 访问量:69

问:

这是我使用鸢尾花数据集创建的数据帧。

library(datasets)
df = iris[which(iris$Species == "setosa" | iris$Species == "versicolor"),] 
# Success
df %>% t.test(Sepal.Length ~ Species, data = .)
# Error is.atomic(x) is not TRUE
df |> t.test(Sepal.Length ~ Species, data = .)

我想知道为什么它们的工作方式不同,什么时候会并且不可互换?%>%|>

R 马格里特

评论


答:

2赞 jpsmith 9/5/2023 #1

在第二种方法中,使用 ,这是应该使用的占位符(这是本机管道的占位符)。.magrittr_

这确实有效:

df |> t.test(Sepal.Length ~ Species, data = _)
 
# Welch Two Sample t-test
# 
# data:  Sepal.Length by Species
# t = -10.521, df = 86.538, p-value < 2.2e-16
# alternative hypothesis: true difference in means between group setosa and group versicolor is not equal to 0
# 95 percent confidence interval:
#   -1.1057074 -0.7542926
# sample estimates:
#   mean in group setosa mean in group versicolor 
# 5.006                    5.936 

您可以在此处找到有关此问题范围之外的差异的更多信息:R 的新本机管道 '|>' 和 magrittr 管道 '%>%' 之间有什么区别?