পয়েন্টের একটি ক্লাস্টারের সেন্ট্রয়েড সন্ধান করুন


27

ওয়েবে অনুসন্ধান করার সময়, বহুভুজগুলির সেন্ট্রয়েডগুলি সন্ধানের সমাধানগুলি প্রায়শই প্রায়শই আসে। আমি যে বিষয়ে আগ্রহী তা হ'ল পয়েন্টের একটি ক্লাস্টারের সেন্ট্রয়েড সন্ধান করা। প্রকারের একটি ভারী গড়। আমি এটির প্রশংসা করব যদি কেউ কিছু পয়েন্টার, সিউডো কোড (বা আরও ভাল, একটি আর প্যাকেজ যা ইতিমধ্যে এটি সমাধান করেছে) বা কীভাবে এই সমস্যাটি মোকাবেলা করা যায় তার লিঙ্ক সরবরাহ করতে পারে।

সম্পাদনা

কনভার্জেনশন হয়েছে (আবার) অ্যান্ট সেন্ট্রয়েডের জন্য গড় স্থানাঙ্ক এবং এটি ব্যবহারের জন্য একটি পদ্ধতির পরামর্শ দিয়েছে। এই ওয়েব পৃষ্ঠায় আমি যখন সঠিক ছবিটি দেখলাম তখন ঠিক আমার মনটি পেরিয়ে গেল ।

নিম্নলিখিত চিত্রটি আঁকতে এখানে কয়েকটি সাধারণ আর কোড রয়েছে যা এটি দেখায় (এটি সেন্ট্রয়েড roid):

xcor <- rchisq(10, 3, 2)
ycor <- runif(10, min = 1, max = 100)
mx <- mean(xcor)
my <- mean(ycor)

plot(xcor, ycor, pch = 1)
points(mx, my, pch = 3)

এখানে চিত্র বর্ণনা লিখুন

সম্পাদনা 2

cluster::pam()$medoidsক্লাস্টারের একটি সেটের মধ্যম ফিরিয়ে দেয়। এটি @ জরিস মাইস থেকে নির্লজ্জভাবে চুরির একটি উদাহরণ:

library(cluster)
df <- data.frame(X = rnorm(100, 0), Y = rpois(100, 2))
plot(df$X, df$Y)
points(pam(df, 1)$medoids, pch = 16, col = "red")

1
পয়েন্টের নূন্যতম দূরত্বের গড় কেন্দ্র বা কেন্দ্রটি যথেষ্ট হবে না এমন কোনও কারণ আছে?
অ্যান্ডি ডব্লিউ

1
@Roman: গ্রাফিক ভুল: আপনি ব্যবহার করতে হবে মানে , মধ্যমা না। 2 ডি স্পেসিয়াল পয়েন্ট মেঘের জন্য একটি মধ্যকেন্দ্রের অ্যানালগ রয়েছে, তবে এটি তাদের মধ্যে একটি নয় (কারণ এটি সমন্বিত-নির্ভরশীল): আলোচনার জন্য stats.stackexchange.com/q/1927/919 দেখুন ।
হোবার

1
আমি ক্রাইমস্ট্যাট ওয়ার্কবুক, আইপিসারস.উমিচ.ইডু / ক্রিমস্ট্যাট / ফাইলস / ক্রিমস্ট্যাটচ্যাপ্টার .৪.pdf এর চতুর্থ অধ্যায় চেক করার পরামর্শ দেব । এটি একটি অত্যন্ত মৃদু ভূমিকা, উচ্চতর মাত্রাগুলির মধ্যস্থতার কোনও অনন্য সমাধান না হওয়ায় বর্ণনা এবং গ্রাফিকভাবে প্রদর্শন করে এবং কেন্দ্রীয় প্রবণতা এবং স্থানিক পয়েন্ট নিদর্শনগুলির বৈকল্পিকতার অন্যান্য পদক্ষেপের বর্ণনা দেয়।
অ্যান্ডি ডব্লিউ

এটি আরও আকর্ষণীয় হয়ে উঠছে। আপনার উত্তরের জন্য ধন্যবাদ। আমি বিষয়টি খতিয়ে দেখছি।
রোমান Luštrik

2
"গড় স্থানাঙ্কের জন্য একটি পদ্ধতির পরামর্শ দিয়েছেন এবং এটি সেন্ট্রয়েডের জন্য ব্যবহার করতে পারেন।" এটি প্রকৃতপক্ষে সেন্ট্রয়েডের সংজ্ঞা, এটি এমন কোনও কিছু নয় যা একটি ভাল অনুমান করে।
কলিন কে

উত্তর:


43

কেবলমাত্র এক্স এবং ওয়াই স্থানাঙ্কগুলি (যদি আপনি চান তবে একটি ওজন দিয়ে গুণ করুন) এবং সেখানে আপনার সেন্ট্রয়েড রয়েছে।


4
+1 দুর্দান্ত সমাধান। এটি স্পেরয়েডে সেন্ট্রয়েডগুলিতেও প্রসারিত হয় (যা পৃথিবীর বৃহত অংশে পয়েন্টগুলি ছড়িয়ে পড়লে প্রক্ষেপণ সম্পর্কিত বিকৃতি এড়াতে প্রয়োজনীয়): প্রথমে (ল্যাট, লম্বা) থ্রিডি (এক্স, ওয়াই, জেড) রূপান্তর করুন ( ভূ-কেন্দ্রিক) স্থানাঙ্কগুলি, সেগুলিকে গড় করুন, তারপরে ফলাফলটিকে আবার (ল্যাট, লোন) রূপান্তর করুন (3 ডিগ্রি গড় পৃষ্ঠের নীচে গভীর হবে এমন প্রায় অনিবার্য সত্যটি উপেক্ষা করে)।
হোবার

আপনার উত্তর প্রতিফলিত করতে আমি আমার প্রশ্ন আপডেট করেছি।
রোমান Luštrik

1

আপনি জিওফিয়ার প্যাকেজ থেকে সেন্ট্রয়েড ফাংশন ব্যবহার করতে পারেন।

https://www.rdocumentation.org/packages/geosphere/versions/1.5-5/topics/centroid


জিআইএস স্ট্যাকএক্সচেঞ্জে আপনাকে স্বাগতম এবং উত্তর জমা দেওয়ার জন্য ধন্যবাদ। আমাদের কেন্দ্রীভূত প্রশ্নোত্তর ফর্ম্যাট সম্পর্কে জানতে দয়া করে ট্যুরটি পর্যালোচনা করতে কিছুক্ষণ সময় নিন । মূল পোস্টার বা ভবিষ্যত অনুসন্ধানকারীদের সহায়তা করার জন্য আমরা সাধারণত দীর্ঘতর (1-2 বাক্য নয়) উত্তর খুঁজছি বলে আরও বিশদ অন্তর্ভুক্ত করার জন্য দয়া করে আপনার উত্তরটি সম্পাদনা করুন। আপনি যে একটি পরিবর্তন করতে পারেন তা হ'ল এমন একটি কারণ যা আপনি ভাবেন যে এই সরঞ্জামটি সহায়ক হবে বা একটি কোড স্নিপেট / স্ক্রিনশট।
স্মাইলার
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.