dbscan clustering of xy points only returns outliers
    7 vues (au cours des 30 derniers jours)
  
       Afficher commentaires plus anciens
    
    AbioEngineer
      
 le 20 Août 2021
  
    
    
    
    
    Modifié(e) : the cyclist
      
      
 le 20 Août 2021
            I have an array of xy points and just want a way to determine the number of clusters. I have many sets of xy points, and all of them are approximately the same in terms of values, so I would think epsilon doesn't need to change too much.
I have tried 
idx=dbscan(centers,1,3);
like they did in the example, but it only returns a vector of -1, which corresponds to outliers. I thought decreasing the epsilon would give more clusters. Using kmeans with 2 clusters gives me the below result, but I would like to separate them even more. I can see both the red and the blue clusters could each have two more. Do I just not have enough points?

0 commentaires
Réponse acceptée
  the cyclist
      
      
 le 20 Août 2021
        
      Modifié(e) : the cyclist
      
      
 le 20 Août 2021
  
      You actually need to increase epsilon, because you need a larger search radius to identify neighborhood points.
load centers
idx = dbscan(centers,50,3);
gscatter(centers(:,1),centers(:,2),idx)
0 commentaires
Plus de réponses (0)
Voir également
Catégories
				En savoir plus sur Statistics and Machine Learning Toolbox dans Help Center et File Exchange
			
	Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!


