虽然在stackoverflow上已经讨论过这个问题,但我并不清楚如何解决我的具体案例
我有一个光栅文件,我读作:
prec<-raster("R:/rsrch/model/prec.tif")
summary(prec)
prec
Min. 3.0
1st Qu. 52.0
Median 104.5
3rd Qu. 173.0
Max. 1850.0
NA's 19201.0
我的回答是存在与否(分别编码为1和0)(总共9674分)。我使用包gam
构建了mgcv
模型,如下所示:
mdl<-gam(species ~ s(prec), family=binomial)
当我运行它时,我收到以下错误:
Error in model.frame.default(formula = species ~ 1 + prec,drop.unused.levels = TRUE):
invalid type (S4) for variable 'prec'
我认为这个错误是由我的光栅中的NA引起的。如果删除NA,则网格总数等于存在不存在点的数量。我不知道现在该做什么:
我尝试过的一件事是:
prec1<-values(prec)[!is.na(values(prec))]
这从我的光栅中移除了NA,但是在我运行模型之后,它附带了一些非常有趣的图表,我完全肯定是错误的。当预测器是栅格并且响应是向量时,有关如何运行gam的任何建议。我在与我的栅格相同的投影中有响应的X Y坐标。谢谢您的帮助。