R 用NA替换光栅中一次出现的值

R 用NA替换光栅中一次出现的值,r,arcgis,R,Arcgis,我有一个值向量(由R中的光栅-光栅包-按函数clump生成): 我想找出每一个只出现一次的值(1,5,11,10),然后用NA替换它。我想得到的是: values(replaced_rc) NA NA NA NA 2 NA 2 2 NA NA NA NA NA NA NA 2 NA 2 2 NA 2 2 NA NA NA NA NA NA NA 2 NA NA NA NA NA 3 NA 4 NA 2 NA 2 NA NA NA NA 3 NA NA 4 NA

我有一个值向量(由R中的光栅-光栅包-按函数clump生成):

我想找出每一个只出现一次的值(1,5,11,10),然后用NA替换它。我想得到的是:

values(replaced_rc)

NA NA NA NA  2 NA  2  2 NA NA NA NA NA NA NA  2 NA  2  2 NA  2  2 NA NA NA
NA NA NA NA  2 NA NA NA NA NA  3 NA  4 NA  2 NA  2 NA  NA NA NA  3 NA NA  4
NA NA  2 NA NA NA NA NA NA NA NA  4 NA NA NA NA NA NA  6 NA  NA NA  4 NA NA
NA  8  8 NA  6  6 NA NA NA NA  4 NA NA NA NA NA NA NA NA  4  4  4 NA NA  9
NA NA NA NA 10 NA NA NA NA  4 NA  9  9 NA NA NA NA 10 NA NA NA  4 NA NA NA
9 NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA
问题是,我可以通过函数轻松识别光栅面片。我想排除只包含像素的补丁,类似于ENVI或ERDAS中的函数“sieve”。有什么帮助吗?先谢谢你

R中的示例:

library("raster")
r <- raster(ncols=12, nrows=12)
set.seed(0)
r[] <- round(runif(ncell(r))*0.7 )
plot(r)
rc <- clump(r)
replaced_rc<- ??? 
库(“光栅”)

r使用重复的

values(rc)[!duplicated(values(rc)) & !duplicated(values(rc),fromLast=T)] <- NA
values(rc)[!duplicated(values(rc))&!duplicated(values(rc),fromLast=T)]
values(rc)[!duplicated(values(rc)) & !duplicated(values(rc),fromLast=T)] <- NA