gpt4 book ai didi

r - 在 tidyverse 中不中断管道的情况下打印中间结果

转载 作者:行者123 更新时间:2023-12-04 10:11:08 25 4
gpt4 key购买 nike

是否有一个命令可以添加到 tidyverse 管道中,该命令不会中断流程,但会产生一些副作用,例如打印出来的东西。我想到的用例是这样的。如果是管道

data %>%
mutate(new_var = <some time consuming operation>) %>%
mutate(new_var2 = <some other time consuming operation>) %>%
...

我想向管道添加一些不会修改最终结果的命令,但会打印出一些进度或事情的状态。也许是这样的:
data %>%
mutate(new_var = <some time consuming operation>) %>%
command_x(print("first operation done")) %>%
mutate(new_var2 = <some other time consuming operation>) %>%
...

是否存在这样的 command_x已经?

最佳答案

对于在管道中打印中间步骤的特定情况,只需使用 %>% print() %>% .例如。,

mtcars %>%
filter(cyl == 4) %>%
print() %>%
summarise(mpg = mean(mpg))
对于简单的状态消息,您可以执行以下操作:
pipe_message = function(.data, status) {message(status); .data}
mtcars %>%
filter(cyl == 4) %>%
pipe_message("first operation done") %>%
select(cyl)
有关非 print 的更通用解决方案,请参阅 @MrFlick 的答案职能。

关于r - 在 tidyverse 中不中断管道的情况下打印中间结果,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46123285/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com