如何抑制来自cast()的警告消息

Bra*_*sen 6 r reshape

我用cast()reshape包装相当频繁.几乎每次都会弹出这个警告:

Aggregation requires fun.aggregate: length used as default

我试图设定options( warn =-1),但无济于事.如何抑制这些警告?

Das*_*son 11

您可以手动将fun.aggregate指定为length.

cast(your_inputs_to_cast, fun.aggregate = length)
Run Code Online (Sandbox Code Playgroud)


mne*_*nel 11

Aggregation requires fun.aggregate: length used as default

message不是一个warning-让你知道的功能决定东西给你.我认为最好的选择是@Dason的答案 - 即手动指定此选项.

但是,如果您不想这样做:

您可以通过包装函数来抑制消息 suppressMessages

使用来自的示例 cast

names(ChickWeight) <- tolower(names(ChickWeight))
chick_m <- melt(ChickWeight, id=2:4, na.rm=TRUE)

suppressMessages(cast(chick_m, time ~ variable))
Run Code Online (Sandbox Code Playgroud)

或者你可以创建自己的功能

cast_suppress <- function(...){suppressMessages(cast(...))}
cast_suppress(chick_m, time ~ variable)
Run Code Online (Sandbox Code Playgroud)