আমি পাইথন ব্যবহার করে একজন রাস্টার থেকে প্রাকৃতিক বিরতির মানগুলি বের করার চেষ্টা করছি।
উদ্দিষ্ট প্রক্রিয়াটি চলে যায়: নম্পপি অ্যারেতে আর্কি রাস্টার বস্তু ( রাস্টারটোমপাইআরাই ব্যবহার করে ) প্রাকৃতিক বিরতির মানগুলিতে ( পিএসএল প্রাকৃতিক বিরতি ফাংশন ব্যবহার করে )।
import arcpy, pysal
from pysal.esda.mapclassify import Natural_Breaks as nb
# code to create greenIndex arcpy Raster object here
greenArray = arcpy.RasterToNumPyArray(greenIndex)
breaks = nb(greenArray,k=2,initial=20)
এই কোডটি ত্রুটিটি প্রদান করে, "ValueError: ম্যাট্রিক্স অবশ্যই দ্বিমাত্রিক হতে হবে"।
যতদূর আমি জানি, গ্রিনআরারি একটি 2-মাত্রিক অ্যারে।
1
প্রাকৃতিক_ব্রিক্স দিয়ে প্রক্রিয়া করার চেষ্টা করার আগে আপনি কি সবুজআরে মাত্রা পরীক্ষা করার চেষ্টা করেছেন? দেখে মনে হচ্ছে অ্যারেতে। শেপ করা আপনাকে অ্যারের মাত্রা দেবে give আমি এর আগে এর আগে কোনও কাজ করিনি, তবে এই পোস্টটি সহায়ক বলে মনে হচ্ছে ... stackoverflow.com/questions/3061761/numpy-array-dimetions
—
Branco
ধন্যবাদ, ব্র্যাঙ্কো আমি সেই থ্রেডটি পেরিয়ে এসেছি, যা আমাকে বিশ্বাস করে যে আমার অ্যারেটি 2-মাত্রিক। সবুজআরে.শ্যাপ = (1536,2048), এবং সবুজআর.ইডিম = ২ এর প্রত্যাবর্তন আমি মনে করি আমি একটি সমাধান নিয়ে এসেছি (numpy.ravel () ব্যবহার করে), যা আমি শীঘ্রই লিখব।
—
phloem
@ ফ্লোয়েম পিআইএসএল ডোকোর দিকে তাকিয়ে আমার মনে হয় আপনি
—
om_henners
flatten
এবং ব্যবহারের মাধ্যমে ঠিক বলেছেন ravel
; Natural_Breaks
কেবলমাত্র মানগুলির 1 ডি ভেক্টর (বা, একটি (n, 1)
ভেক্টর) গ্রহণ করে বলে মনে হয় ।