Question

J'ai des milliers d'ensembles de données très similaires qui doivent être divisés de manière diagonale à deux groupes. par exemple:enter image description hereetenter image description here

J'ai essayé de jouer avec l'argument de DBSCAN et Optic comme EPS et Minpoints et même métrique et aucun d'entre eux m'a aidé à diviser correctement les données en 2 groupes. Je réussit à diviser les données en utilisant DBSCAN si je supprime le bruit entre ces groupes pour en faire un 2 groupes séparés de 2 groupes, je l'ai fait en utilisant l'histogramme

j = 1
hist, bin_edges = np.histogram(data, bins=500)
max_bin = np.where(np.amax(hist) == hist)[0][0]
max_noise = bin_edges[max_bin+j]
filtered_indicies = data > max_noise
data = data[filtered_indicies]

Ces lignes suppriment le bruit des données, entre les groupes et aussi autour de lui lorsque

J> 1

et cela me faisait supprimer les données nécessaires que j'ai besoin de retraiter plus tard.

Alors je remonte à ma question principale, comment puis-je savoir quels EP, points min ou tout autre argument de DBSCAN peuvent m'aider à diviser correctement ces données? Ou y a-t-il peut-être un meilleur moyen que ce que j'ai présenté ici ci-dessus (histogramme) pour supprimer le bruit entre ces groupes sans supprimer les données nécessaires?

Pas de solution correcte

Licencié sous: CC-BY-SA avec attribution
scroll top