2017-05-31 5 views
0

10 * 10ラスタから、たとえば90%の選択を解除したい、つまり10%が表示されたままにします。これを行うには、thisコードを採用しました。下記を参照してください。しかし、結果のピクセルには多少の変動があります(10ピクセル以下、10ピクセル以下)。ランダム選択の精度を設定する可能性はありますか?代わりにあなたのrunifラインのグリッドセルのxy%を正確に非選択にする方法は?

r<- raster(ncol=10, nrow=10, xmn=0, ymn=0, xmx=10, ymx=10)#create raster 
values(r)<- 1:ncell(1) #asigne 1 to each raster cell 
#plot(r, col='black') #plot raster 

r[runif(10*10) >= 0.15] <- NA # Randomly *unselect* XY% of the data 

par(pty="s", mar=c(1,1,1,1)) 
plot(r, col='black', legend=FALSE, axes=F) #plot raster 
box(lty=1, col="black", lwd=5) 

答えて

1

、これはランダムに細胞の正確に90%を選択する

r[sample(ncell(r),ncell(r)*0.9)] <- NA 

を使用しています。

関連する問題