gpt4 book ai didi

r - 抑制 R 中的 rgdal 警告

转载 作者:行者123 更新时间:2023-12-05 06:11:40 24 4
gpt4 key购买 nike

我有一些工作代码,突然间,显示了很多警告消息(以前没有)。它们不会妨碍代码的执行,但非常烦人。我有大约 2000 个我想转换为光栅的 tif。为此,我将它们加载到一个列表中,如下所示:

tif_list<-list.files(pattern = "*.tif$")
tif_list<-lapply(tif_list, raster)

我尝试的第一件事是 rgdal 的建议

options("rgdal_show_exportToProj4_warnings"="none") # using it before loading the library as rgdal suggests
library(rgdal)

这没有用,所以接下来我尝试使用 options(warn=-1) 全局禁用警告这也没有帮助。

接下来我厌倦了 suppressWarnings(lapply(tif_list, raster)) 但还是没有运气。有点绝望,我试图将所有 rgdal 警告设置为 false:

set_thin_PROJ6_warnings(FALSE)
set_rgdal_show_exportToProj4_warnings(FALSE)

当然什么也没做。

我也试过设置警告不可见

invisible(capture.output(lapply(tif_list, raster))) # although just not outputting them would be better 

这也没有做任何事情,我的想法已经用完了。

简要说明一下,有两件事。当我将列表子集化为少于 4-5 个要转换的 tif 时,警告不显示。也最多 40 个 tifs,警告仅在我运行代码时每 2 次出现一次。

警告看起来像这样:

proj_create_from_database: datum not found
proj_create_from_database: ellipsoid not found
proj_create_from_database: prime meridian not found
proj_create_from_database: datum not found
proj_create_from_database: ellipsoid not found
proj_create_from_database: prime meridian not found
proj_create_from_database: datum not found
proj_create_from_database: ellipsoid not found
proj_create_from_database: prime meridian not found
proj_create_from_database: datum not found
proj_create_from_database: ellipsoid not found
proj_create_from_database: prime meridian not found
proj_create_from_database: datum not found
proj_create_from_database: ellipsoid not found
proj_create_from_database: prime meridian not found
proj_create_from_database: datum not found
proj_create_from_database: ellipsoid not found
proj_create_from_database: prime meridian not found

附言:

我也更新到最新的 rgdal 版本 1.5-16

最佳答案

这是一个临时解决方案,但卸载/重新安装 rgdal 可以解决问题。

在它变成错误之前,您可以运行任何产生警告的命令的次数必须有一个上限,也许它在他们的 GitHub 页面上。

关于r - 抑制 R 中的 rgdal 警告,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63897615/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com