本文介绍了运行dplyr::Left_Join时禁止注释通过...连接(&Q;)的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
这可能很简单,但我在任何地方都找不到答案...
当我使用以下代码时
library("nycflights13")
result <- flights %>%
dplyr::select(year:day, hour, origin, dest, tailnum, carrier) %>%
dplyr::left_join(airlines)
屏幕上会回显以下备注:
> Joining by: "carrier"
这当然是在交互会话中可以看到的有用信息,但当我将left_join
作为较长脚本的一部分使用时,我通常不希望回显这种类型的注释(尤其是当该脚本通过CONTER生成html报告时,因为该html还将包含打印的Joining by: "carrier"
行。
如何防止LEFT_JOIN(等)打印此评论?
谢谢你,Peter
推荐答案
@Khashaaa的评论指出了一种阻止消息的方法,如果您事先知道绑定变量,这种方法既有用又简洁。有关如何使用一个或多个变量执行此操作,请参阅?dplyr::join
。给定示例的语法为
left_join(airlines,by="carrier")
因为dplyr
代码使用R的message()
函数来发出Joining by: *
消息,所以您可以使用R的suppressMessages()
包装器(或任何其他dplyr
联接)来抑制这些消息。有关详细信息,请参阅?message
。OP示例实际上返回两种消息,>library("nycflights13")
>library("dplyr")
>result <- flights %>%
+ select(year:day, hour, origin, dest, tailnum, carrier) %>%
+ left_join(airlines)
Joining by: "carrier"
Warning message:
In left_join_impl(x, y, by$x, by$y) :
joining factor and character vector, coercing into character vector
可以使用suppressMessages()
包装器隐藏第一条消息
>suppressMessages(result <- flights %>%
+ select(year:day, hour, origin, dest, tailnum, carrier) %>%
+ left_join(airlines))
Warning message:
In left_join_impl(x, y, by$x, by$y) :
joining factor and character vector, coercing into character vector
第二条消息是诊断警告消息。有关详细信息,请参阅?warning
;有几种方法可以处理这种情况。如果您选择像前面的消息一样隐藏它,一种方法是添加另一个包装器> suppressWarnings(suppressMessages(result <- flights %>%
+ select(year:day, hour, origin, dest, tailnum, carrier) %>%
+ left_join(airlines)))
>
这篇关于运行dplyr::Left_Join时禁止注释通过...连接(&Q;)的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!