একযোগে পয়েন্টগুলির মধ্যে দূরত্ব পরিমাপ করা


9

আমি জিপিএস ডেটা নিয়ে কাজ করছি এবং তাই আমার কাছে তারিখ / সময় তথ্য সহ ইউটিএম আছে। আমার 2 প্রজাতির প্রজাতি রয়েছে (মজ এবং নেকড়ে) আমি সময় মতো মিলে মজ থেকে নেকড়ের তথ্যতে যোগ দিতে চাই। সুতরাং, মোজ ১ থেকে অবস্থান 1 হ'ল 2007-03-26 14:33:49 সমস্ত নেকড়ে যা প্রায় একই সময়ে রেকর্ড করা হয়েছিল । আনুমানিক কী - এটির অর্থ হল সেই সময়ের প্রায় 30 মিনিটের বাফারের মধ্যে থাকা সমস্ত নেকড়ের অবস্থান অনুসন্ধান করার জন্য আমার কাছে একটি সময় উইন্ডো বা বাফার থাকতে হবে।

আমি এমন একটি স্ক্রিপ্ট বা সরঞ্জাম খুঁজছি যা একটি উইন্ডো বাফার সেট করবে +/- এক্স মিনিট এবং "ব্যাচ" প্রক্রিয়া করতে সক্ষম হবে। কমপক্ষে 30 টি মুজ এবং 30 টি নেকড়ে - তাই একবারে এক জোড়া ম্যাচ করা সহায়ক নয়। একবার Ive তারিখ / সময় মিলে গেলে আমি তারপরে শাঁখ এবং নেকড়ের XY অবস্থানের এবং সময়ের পার্থক্যের মধ্যে দূরত্ব গণনা করতে চাই। আমি একটি আউটপুট চাই:

individualmooseID | mooseDate | mooseX | mooseY | individualwolfID | wolfDate | wolfX | wolfY | Distance(m) | TimeDiff (min)

একই সময়ের জন্য মুভিডটি বিভিন্ন ডিফারেন্ট ওল্ফআইডিগুলির সাথে মেলে। কোন পরামর্শ প্রশংসা হবে। আমি আর এর জন্য একটি কোড লিখেছি কিন্তু এটি আমার প্রশ্নটি দেখে কাজ করছে না: https://stackoverflow.com/q/15646365/675742 এবং আমাকে কোনও সময়ে ডেটা আর্কজিআইএসে আনতে হবে যাতে আমি আর এড়িয়ে যেতে পারি এবং করতে পারি আরকিজিআইএস-এ সবই তখন দুর্দান্ত!


4
আমি সফলভাবে দুটি স্তরের যার স্থানাঙ্ক ছিল তৈরি করে একটি দীর্ঘ সময় আগে এটা করেছে সময় প্লাস একটি কৃত্রিম মূল্য Y সঙ্গে Y এক ডেটা সেটটি জন্য = 0 এবং Y অন্যান্য ডেটা সেটটি জন্য কিছু ধ্রুবক =। এই মুহুর্তে আপনি আপনার প্রশ্নের উত্তর দেওয়ার জন্য স্থানিক যোগদান, বাফারিং এবং স্থানিক বিশ্লেষণের অন্যান্য রূপগুলি ব্যবহার করতে পারেন কারণ এই কৃত্রিম স্থানাঙ্কগুলির মধ্যে সান্নিধ্য সময় নৈকট্যের সমান same
whuber

উত্তর:


4

এর মতো ডেটা সেট অবশ্যই খুব বেশি তথ্য দিতে পারে।

আমি এটি একটি স্থানিক ডাটাবেস পরিবেশে করবো, বেশিরভাগ পোস্টগ্রিজ এসকিউএল / পোস্টজিআইএস।

আপনি যা করতে চান তা স্থানিক এবং সময় ডেটা উভয়ই একটি সহজ যোগদানের মত মনে হচ্ছে।

তারপরে আপনি সবকিছুই একটি ক্যোয়ারিতে করেন। জটিল অংশটি হতে পারে সময় যোগ দেওয়ার জন্য সূচীগুলি অনুকূল করতে। আমার ধারণা ডেটা সেটগুলি বেশ বড়।

ক্যোয়ারী এর মতো কিছু দেখতে পারে (এটি সিউডো কোড হিসাবে পড়ুন, বিশেষত সময়ের অংশ))

SELECT DISTINCT ON (moose_id, wolf_id, moose_time) 
moose_id, moose_geom, moose_time, wolf_id, wolf_geom, wolf_time,
ST_Distance(moose_geom, wolf_geom) as dist, moose_time-wolf_time as time_diff
FROM
moose_table as mt inner join wolf_table as wt 
on 
ST_DWithin(moose_geom, wolf_geom,10000) 
AND moose_time > ( wolf_time-30) 
AND moose_time < (wolf_time + 30) 
ORDER BY abs(time_diff), moose_id, wolf_id, moose_time;

দুটি নোট:
1) আমি 10000 মিটারের কাছাকাছি থাকা নেকড়ে-শ্বাচীর জোড়ায় বাধা দেওয়ার জন্য ST_DWithin ব্যবহার করেছি। এটি গণনা হ্রাস করার এবং প্রতিটি সম্ভাব্য সংমিশ্রণটি গণনা না করার একটি উপায়।
2) আমি DISTINCT চালু করেছি। প্রতিটি মুজ সময় রেজিস্ট্রেশনের প্রতিটি মাউস-নেকড়ে সংমিশ্রনের জন্য যখন সময় সর্বাধিক কাছাকাছি থাকে তখন আপনার কেবলমাত্র দূরত্ব পাওয়া উচিত।

তবে আমি আপনার ডেটা সেটটিতে পরীক্ষা করার জন্য আরও কয়েকটি আকর্ষণীয় প্রশ্ন দেখতে পাচ্ছি যা নেকড়রা যেভাবে শ্বাসরুদ্ধকারীর শিকার করে সে সম্পর্কে আকর্ষণীয় তথ্য দেয়।

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

আপনি অবশ্যই অন্য একটি সহজ ক্যোয়ারী থেকে গতি পাবেন :-)

সুতরাং, পোস্টগ্রিস ডাটাবেসে আপনার টেবিলগুলি রাখুন এবং সেখানে কাজ করুন।

আপনি যদি আর্কজিআইএস 10 বা 10.1 ব্যবহার করেন আপনি সরাসরি ডাটাবেস থেকে ডেটা দেখতে পারেন। বা কিউজিআইএস থেকে। এটি পোস্টজিআইএস-কিউজিআইএস-এর আরও পরিপক্ক সংমিশ্রণ।

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