Nata
Nata

Reputation: 171

How to do density clustering of geodata?

I would like to cluster geodata (coordinates, height at least) using density-based algorithm. I discovered DBSCAN should work pretty good for my purpose. I want to have even small separate clusters with minpts 1 or 2. It does the job, but leaves other points as one huge cluster or noise and I want those to be clustered into smaller groups also.

For example, if I have two groups of high points (like mountains) located in different places on the map, I want them to be in two separate clusters. How to achieve this? Maybe somehow to set max points value in the algorithm? I appreciate any advice.

P.S. I used R for this purpose, but the question is more about the approach.

Upvotes: 0

Views: 187

Answers (1)

Has QUIT--Anony-Mousse
Has QUIT--Anony-Mousse

Reputation: 77485

Don't use too small minpts.

1 or 2 points are not "clusters". These points are "noise". Just treat all points in noise as separate clusters, or connect those within a short enough distance if you really want to. You can easily post-process noise.

But for the purpose of density base clustering, you need more points to have density. In fact for minpts up to 2, DBSCAN degenerates to single-link clustering.

Upvotes: 1

Related Questions