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

时间:2012-06-18 03:29:47

标签: r reshape

我经常使用cast()包中的reshape。几乎每次都会弹出这个警告:

Aggregation requires fun.aggregate: length used as default

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

2 个答案:

答案 0 :(得分:11)

您可以手动将fun.aggregate指定为长度。

cast(your_inputs_to_cast, fun.aggregate = length)

答案 1 :(得分: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))

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

cast_suppress <- function(...){suppressMessages(cast(...))}
cast_suppress(chick_m, time ~ variable)