আরে রাস্টার গ্রিড স্ন্যাপিং


10

আমি আর এ দুটি রাস্টার গ্রিড সারিবদ্ধ করার চেষ্টা করছি Once একবার সারিবদ্ধ হয়ে গেলে আমি সেগুলি একসাথে যুক্ত করতে সক্ষম হতে চাই।

আমি এটি তৈরির stackকাজ করবে কিনা তা যাচাই করার চেষ্টা করেছি :

grid_snap <- stack(habi_sdw, Pop_sdw)

এবং আমি নিম্নলিখিত ত্রুটি পেয়েছি:

তুলনাআরস্টার (এক্স) এ ত্রুটি: ভিন্ন মাত্রা

রাস্টার গ্রিডগুলির নিম্নলিখিত বৈশিষ্ট্য রয়েছে:

show(habi_sdw)
# class       : RasterLayer 
# dimensions  : 9187, 9717, 89270079  (nrow, ncol, ncell)
# resolution  : 0.00892857, 0.00892857  (x, y)
# extent      : -28.83706, 57.92186, -36.02464, 46.00214  (xmin, xmax, ymin, ymax)
# coord. ref. : +proj=longlat +ellps=WGS84 +towgs84=0,0,0,0,0,0,0 +no_defs 
# data source : C:\Users\di39\AppData\Local\Temp\R_raster_di39\raster_tmp_2015-08-12_172902_12860_17067.grd 
# names       : layer 
# values      : 0, 333707.6  (min, max)

show(Pop_sdw)
# class       : RasterLayer 
# dimensions  : 10143, 8858, 89846694  (nrow, ncol, ncell)
# resolution  : 0.008333333, 0.008333333  (x, y)
# extent      : -17.53524, 56.28143, -46.97893, 37.54607  (xmin, xmax, ymin, ymax)
# coord. ref. : +proj=longlat +datum=WGS84 +no_defs +ellps=WGS84 +towgs84=0,0,0 
# data source : C:\Users\di39\AppData\Local\Temp\R_raster_di39\raster_tmp_2015-08-12_170421_12860_12760.grd 
# names       : pop2010ppp 
# values      : 0, 128925.9  (min, max)

alignExtent()রাস্টার প্যাকেজটিতে ব্যবহার করা সঠিক পন্থা বলে মনে হচ্ছে না।

রেজোলিউশনগুলি কিছুটা আলাদা হওয়ার কারণে আমার কি পুনরায় নমুনা নেওয়া দরকার?

(0.00892857 x 0.00892857) বনাম (0.008333333 বনাম 0.008333333)

উত্তর:


15

এই প্রশ্নটির অনুরূপ: ডেটা এক্সট্রাকশন এবং রেজোলিউশন পরিবর্তন সহ রাস্টার দ্বারা ক্লিপ রাস্টার , তবে একটি ভিন্ন কোণ থেকে আসছে। তবে আমি মনে করি উত্তর সম্ভবত একই রকম। প্রথমে, আপনি কোন রাস্টারটি সংক্ষিপ্ত হতে চান তা চয়ন করুন। আমি আমার আগের উত্তরটি স্বাচ্ছন্দ্যের জন্য এখানে পুনরাবৃত্তি করব:

প্রয়োজনীয় লাইব্রেরি লোড করুন:

library(raster)
library(rgdal)

রেস্টারদের পড়ুন:

r1 = raster("./dir/r1.tif")
r2 = raster("./dir/r2.tif")

একই গ্রিডের নমুনা:

r.new = resample(r1, r2, "bilinear")

যদি প্রয়োজন হয় (মাস্কিংয়ের জন্য), মেলানোর জন্য এক্সটেন্টস সেট করুন:

ex = extent(r1)
r2 = crop(r2, ex)

মুছে ফেলা তথ্য যা কোনও একজন রেস্টারদের বাইরে পড়ে (যদি আপনার প্রয়োজন হয়):

r.new = mask(r.new, r2)

আপনার রাস্টাররা এখন মেলে।


0

হ্যাঁ. আপনার রেস্টারদের একই আকার হতে এবং একই পরিমাণে বাড়ানোর জন্য আপনাকে পুনরায় নমুনা করতে হবে। আর নিজেই এটিকে মোকাবেলা করে না। প্রদত্ত যে আপনার উভয় রাস্টার সম্পূর্ণরূপে অন্যটিকে ধারণ করে না, আপনি আপনার পছন্দসই রেজোলিউশনের সাথে ন্যূনতম-মাত্রার রাস্টার তৈরি করার কথা বিবেচনা করুন এবং তারপরে পুনরায় নমুনা তৈরি করুন এবং এটির সাথে মিলে যায় crop


2
আপনার উত্তরটি বিস্তারিতভাবে বর্ণনা করুন, উদাহরণস্বরূপ কিছু নমুনা কোড সরবরাহ করে।
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.