既存のラスターからのいくつかの値のみを含む新しいラスターオブジェクトを作成しようとしています。https://www.ga.gov.au/products/servlet/controller?event=FILE_SELECTION&catno=71071にあるクラスラスターを使用しています。
class : RasterLayer dimensions : 14902, 19161, 285537222 (nrow, ncol, ncell)
resolution : 0.002349, 0.002349 (x, y)
extent : 110, 155.0092, -45.0048, -9.999999 (xmin, xmax, ymin, ymax)
coord. ref. : +proj=longlat +datum=WGS84 +no_defs +ellps=WGS84 +towgs84=0,0,0
values : G:\Spatial data\environmental_layers\Australian data\Land cover\Class\DLCDv1_Class.tif
min value : 1
max value : 34
私が試してみました:
pr <- rasterToPoints(r) # but the file is to big
と
s <- r[r>30 & r<33] # but the file is to big
と
rc <- reclass(r, c(-Inf,30,NA, 31,32, 1, 33,Inf,NA))
これにより、プロパティを持つラスターが生成されます。
class : RasterLayer
dimensions : 14902, 19161, 285537222 (nrow, ncol, ncell)
resolution : 0.002349, 0.002349 (x, y)
extent : 110, 155.0092, -45.0048, -9.999999 (xmin, xmax, ymin, ymax)
coord. ref. : +proj=longlat +datum=WGS84 +no_defs +ellps=WGS84 +towgs84=0,0,0
values : C:\Users\Adam\AppData\Local\Temp\R_raster_tmp\raster_tmp_61931056968.grd
min value : 1
max value : 33
これにより、NAと1の値を持つラスターレイヤーが生成されると思いましたが、33の値があります。このような大きなファイルでRを使用して「属性で抽出」する方法を見つけるのに苦労しています。誰かが私がこれを行う方法についての提案がありますか?