R 直接调用函数时禁止加载消息(不完全加载包)

R 直接调用函数时禁止加载消息(不完全加载包),r,R,我想抑制加载消息,就像中一样,只是我没有加载整个包,而是直接调用函数 例如,调用光栅的功能如下: f <- system.file("external/test.grd", package="raster") r <- raster::raster(f) p <- raster::rasterToPolygons(r, dissolve = TRUE) suppressPackageStartupMessages(library(rgeos)) 如何防止出现此消息?到目前为

我想抑制加载消息,就像中一样,只是我没有加载整个包,而是直接调用函数

例如,调用
光栅
的功能如下:

f <- system.file("external/test.grd", package="raster")
r <- raster::raster(f)
p <- raster::rasterToPolygons(r, dissolve = TRUE)
suppressPackageStartupMessages(library(rgeos))
如何防止出现此消息?到目前为止,我找到的唯一解决方案是加载
rgeos
,如下所示:

f <- system.file("external/test.grd", package="raster")
r <- raster::raster(f)
p <- raster::rasterToPolygons(r, dissolve = TRUE)
suppressPackageStartupMessages(library(rgeos))

但是当我在一个包中使用函数
raster::rasterToPolygons
时,我真的不想完全加载
rgeos

我想我以前试过,但显然没有。这两个选项都有效:

p <- suppressMessages(raster::rasterToPolygons(r, dissolve = TRUE))
p <- suppressPackageStartupMessages(raster::rasterToPolygons(r, dissolve = TRUE))

p您是否尝试过
p如果该函数需要该包,则整个包将被加载。你在写你自己的包吗?您是否尝试将
rgeos
列为依赖项?是的,我已将
rgeos
列为包的依赖项,并尝试了
suppressMessages
,但似乎没有帮助。不过,在名称空间中完整导入
rgeos
就可以做到这一点。对于一个函数的使用来说似乎太过分了,但我想它会的!很抱歉,我被弄糊涂了:
suppressWarnings(raster::rasterToPolygons(r,dissole=TRUE))
不起作用(它不是警告消息),但是
suppressMessages(raster::rasterToPolygons(r,dissole=TRUE))
起作用(不将
rgeos
导入命名空间)。我发誓我已经试过了!哦,好吧。将添加作为答案。