R 从计算光栅马赛克中排除NAs

R 从计算光栅马赛克中排除NAs,r,raster,na,R,Raster,Na,不幸的是,由于我没有足够的声誉,无法对这个话题发表评论,我不得不对一个已经存在的问题问一个简单的问题。我在R中计算光栅马赛克,并坚持这个过程:非常感谢 我唯一的问题是,我想用中位数或均值计算它,但不包括我的NAs。 很抱歉,我没有将其包含到现有代码中: b1_listargs <- b1_unstack b1_listargs$fun <- mean b1_mosaic <- do.call(mosaic, b1_listargs) 正如我从上面了解到的功能,它不会自动排除N

不幸的是,由于我没有足够的声誉,无法对这个话题发表评论,我不得不对一个已经存在的问题问一个简单的问题。我在R中计算光栅马赛克,并坚持这个过程:非常感谢

我唯一的问题是,我想用中位数或均值计算它,但不包括我的NAs。 很抱歉,我没有将其包含到现有代码中:

b1_listargs <- b1_unstack
b1_listargs$fun <- mean
b1_mosaic <- do.call(mosaic, b1_listargs)

正如我从上面了解到的功能,它不会自动排除NAs。因此,给定c4,4,4,4的平均值,我的计算值将变成NA-这对我来说并不是有用的输出

谢谢你的帮助

看看这一页:


它表明存在一个省略NAs的参数

我知道这个问题有点老了,但我也遇到了同样的情况,我会尝试:

其中A是我的光栅列表

A$fun <- mean
Mosaic <- do.call(mosaic, list(A,na.rm=T))

在计算重叠光栅之间的平均值时,应忽略缺少的值。

我不想绘制马赛克,而是生成马赛克。因为我有很多层,所以我坚持上面的代码。根据上面的链接,简单的马赛克b1_unstack,fun=mean,na.rm=TRUE是不可能的,因为b1_unstack是一个列表,并且马赛克命令不再接受列表。这就是为什么我必须坚持使用这个代码示例,并希望以某种方式包含na.rm=T。您是否尝试过在自己的行中简单地执行na.rm马赛克?据我所知,马赛克是从其他层计算出来的。我可以使用均值和中值等函数来获得由许多其他层导出的马赛克值。我的目标是在这个计算过程中排除NAs,有NA的意思不同于没有NA的意思。我认为您的功能仅适用于删除已存在/已计算马赛克的NAs。正如我从上面理解的功能,它不会自动排除NAs。因此,给定c4,4,4,4的平均值,我的计算值将变成NA-这对我来说并不是有用的输出。。。