栅格r错误:{:任务1中的错误失败 - &quort; 0(non -na)案例;

发布于 2025-01-25 09:26:57 字数 2696 浏览 1 评论 0原文

我正在尝试通过r软件包 atusterancega 在某些环境横梁上。但是,{:任务5失败 - “ 0(non -na)案例”中的错误错误,当我的射手通过算法时。到目前为止,我没有使用我使用过的任何其他数据集的问题,但是,该数据集是外部采购的。这使我相信这与栅格本身有关,而不是包裹。所有横司的格式均以.ASC格式,并已从Geotiffs转换。

可以找到数据

所使用的完整代码:

# Load Package
library(ResistanceGA) 
library(rgdal)
library(corpcor)
library(pryr)

## Create Directory for Examples ##
if("ResistanceGA_Examples"%in%dir("D:/ResistanceGA/Data/Model_Outputs/100m")==FALSE)
  dir.create(file.path("D:/ResistanceGA/Data/Model_Outputs/", "100m"))

## Create Directory Object for .asc Files and results
write.dir <- "D:/ResistanceGA/Data/Model_Outputs/FINAL"

## Set working directory ##
setwd("D:/ResistanceGA/Data/Model_Ouputs/100m")

## Set ASC Directory ##
asc.dir <- "D:/ResistanceGA/Data/FINAL/100m/ASC"

## Sample locations
samples <- read.table("D:/ResistanceGA/EGK_SampleLoc.txt", sep="")
sp.dat <- SpatialPoints(samples[,c(1,2)], proj4string = CRS("+proj=longlat +datum=WGS84"))
sp.dat.reproj <- spTransform(sp.dat, CRS("+proj=utm +zone=56 +south"))

## Input Genetic Matrix ##
gen_dist <- read.table('D:/ResistanceGA/EGK_Fst.txt', sep="", header = FALSE)

## Bring in Geochemistry Rasters ##
carbon <- raster('carbon.asc')
phos <-raster('phosphorus.asc')
nit <-raster('nitrogen.asc')

## Create the Raster Stack ##
r.stack <- stack(carbon, phos, nit)

## Change Projection Of Datasets ##
crs(sp.dat.reproj)<- CRS("+proj=utm +zone=56 +south +datum=WGS84")
crs(r.stack)<- CRS("+proj=utm +zone=56 +south +datum=WGS84")

## Genetic Distance Inputs ##
gdist.inputs <- gdist.prep(length(sp.dat.reproj),
                           samples = sp.dat.reproj,
                           response = lower(as.matrix(gen_dist)),
                           method = 'commuteDistance')

GA.inputs <- GA.prep(ASCII.dir = r.stack,
                     Results.dir = write.dir,
                     parallel = 14)

SS_RESULTS.gdist <- SS_optim(gdist.inputs = gdist.inputs,
                             GA.inputs = GA.inputs)

运行以下内容时会出现错误:

SS_RESULTS.gdist <- SS_optim(gdist.inputs = gdist.inputs,
                             GA.inputs = GA.inputs)

输出:

Error in { : task 5 failed - "0 (non-NA) cases"

应输出迭代指标时,例如:

GA | iter = 1 | Mean = -57442.214 | Best =    155.842
GA | iter = 2 | Mean = -56714.224 | Best =    157.142
GA | iter = 3 | Mean = -28712.441 | Best =    159.342
GA | iter = 4 | Mean = -34414.224 | Best =    159.842

I'm trying to conduct a landscape genetic analysis through the R Package ResistanceGA on some environmental rasters. However, I keep running into the error Error in { : task 5 failed - "0 (non-NA) cases" when my rasters are being passed through the algorithm. I've had no issues to date with any of the other datasets that I've used, however, this dataset was sourced externally. This leads me to believe that it is something to do with the raster itself, and not the package. All rasters are in .asc format and have been converted from GeoTIFFs.

Data can be found here.

The full code used:

# Load Package
library(ResistanceGA) 
library(rgdal)
library(corpcor)
library(pryr)

## Create Directory for Examples ##
if("ResistanceGA_Examples"%in%dir("D:/ResistanceGA/Data/Model_Outputs/100m")==FALSE)
  dir.create(file.path("D:/ResistanceGA/Data/Model_Outputs/", "100m"))

## Create Directory Object for .asc Files and results
write.dir <- "D:/ResistanceGA/Data/Model_Outputs/FINAL"

## Set working directory ##
setwd("D:/ResistanceGA/Data/Model_Ouputs/100m")

## Set ASC Directory ##
asc.dir <- "D:/ResistanceGA/Data/FINAL/100m/ASC"

## Sample locations
samples <- read.table("D:/ResistanceGA/EGK_SampleLoc.txt", sep="")
sp.dat <- SpatialPoints(samples[,c(1,2)], proj4string = CRS("+proj=longlat +datum=WGS84"))
sp.dat.reproj <- spTransform(sp.dat, CRS("+proj=utm +zone=56 +south"))

## Input Genetic Matrix ##
gen_dist <- read.table('D:/ResistanceGA/EGK_Fst.txt', sep="", header = FALSE)

## Bring in Geochemistry Rasters ##
carbon <- raster('carbon.asc')
phos <-raster('phosphorus.asc')
nit <-raster('nitrogen.asc')

## Create the Raster Stack ##
r.stack <- stack(carbon, phos, nit)

## Change Projection Of Datasets ##
crs(sp.dat.reproj)<- CRS("+proj=utm +zone=56 +south +datum=WGS84")
crs(r.stack)<- CRS("+proj=utm +zone=56 +south +datum=WGS84")

## Genetic Distance Inputs ##
gdist.inputs <- gdist.prep(length(sp.dat.reproj),
                           samples = sp.dat.reproj,
                           response = lower(as.matrix(gen_dist)),
                           method = 'commuteDistance')

GA.inputs <- GA.prep(ASCII.dir = r.stack,
                     Results.dir = write.dir,
                     parallel = 14)

SS_RESULTS.gdist <- SS_optim(gdist.inputs = gdist.inputs,
                             GA.inputs = GA.inputs)

Error arises when the following is run:

SS_RESULTS.gdist <- SS_optim(gdist.inputs = gdist.inputs,
                             GA.inputs = GA.inputs)

and outputs:

Error in { : task 5 failed - "0 (non-NA) cases"

When it should output iterative metrics like:

GA | iter = 1 | Mean = -57442.214 | Best =    155.842
GA | iter = 2 | Mean = -56714.224 | Best =    157.142
GA | iter = 3 | Mean = -28712.441 | Best =    159.342
GA | iter = 4 | Mean = -34414.224 | Best =    159.842

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。
列表为空,暂无数据
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文