我正在尝试使用raster :: focal找出每个栅格像元有多少个值为1的邻居。但是,我注意到在生成的栅格中,边缘像元已被替换为NA值。如何获得栅格外边缘的邻居计数?
以下是可重现的示例:
#create raster and add 1's and 0's
land <- raster(matrix(0, 8, 10), xmn=408027.5, xmx=413027.5, ymn=4370000,
ymx=4374000)
land[4:8, 2:5] <- 1
land[2:3, 8:9] <- 1
land[1,0:10] <- 1
land[is.na(land[])] <- 0
#plot the raster
plot(land)
#create window for focal function
w <- matrix(1,3,3)
#run raster::focal
land.foc <- focal(land, w=w, fun=sum)
#plot resulting focal raster
plot(land.foc)
#plot NA values in land.foc
plot(is.na(land.foc))
但是,当您比较两个栅格时可以看到,焦点栅格中最外面的像元已被替换为NA。
答案 0 :(得分:2)