@Khashaaa 的评论指出了一种阻止该消息的方法,如果您事先知道绑定变量,则该方法非常有用且简洁。看?dplyr::join
了解如何使用一个或多个变量执行此操作。给定示例的语法是
left_join(airlines,by="carrier")
因为dplyr
代码使用R的message()
函数来发出Joining by: *
消息,你可以使用 R 的suppressMessages()
周围的包装纸left_join
(或任何其他dplyr
join)来抑制这些消息。看?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()
wrapper
>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)))
>