Saya telah ditugaskan untuk membuat analisis kesesuaian kondisi gelombang di Teluk Meksiko. Saya memiliki 2 ribu file raster yang masing-masing sekitar 8 MB (2438 kolom, 1749 baris, ukuran sel 1 km). Parameter dalam file raster adalah periode gelombang dan saya ingin mengklasifikasi ulang semua raster sehingga jika 4<= wave period <=9 then make cell = 1
, sel lain = 0. Kemudian jumlah semua raster menjadi raster terakhir dan bagi dengan jumlah total raster untuk memberikan persentase total pengamatan yang sesuai dan hasil ekspor ke dalam beberapa format yang kompatibel dengan ESRI ... mungkin sesuatu yang dapat mendukung pelampung jika perlu. Saya tidak bekerja sama sekali dengan Python atau R, tetapi setelah mencari online sepertinya masuk akal untuk melakukan proses ini dalam salah satu bahasa tersebut. Sejauh ini saya telah menemukan beberapa kode di R, tetapi saya bingung bagaimana cara membuatnya.
library(rgdal)
raster_data <- list.files(path=getwd()) #promt user for dir containing raster files
num_files <- length(raster_data)
for (i in raster_data) { #read in rasters
my_data <- readGDAL(raster_data[i])
Pada titik ini saya bingung apakah saya juga harus mereklasifikasi dan mulai menjumlahkan data dalam loop ini atau tidak. Dugaan saya adalah ya karena kalau tidak saya pikir saya akan kehabisan memori di komputer saya, tetapi tidak yakin. Saya juga tidak yakin tentang cara mereklasifikasi data.
Dalam riset online saya pikir saya akan menggunakan reclass(my_data, c(-Inf,3,0, 4,9,1, 10,Inf,0))
, tetapi apakah itu terlihat benar?
Dan untuk menjumlahkan akan saya gunakan sum(stack(my_data))
dan entah bagaimana output itu. Juga ... jika ini lebih efisien dilakukan atau ditulis dalam Python saya akan terbuka untuk itu juga. Saya benar-benar pemula dalam hal pemrograman.