【发布时间】:2023-03-07 18:56:01
【问题描述】:
我正在使用DBSCAN对数据进行聚类,聚类后,对于每个聚类我想获取核心点的数据属性值,有没有办法做到这一点?
private static void ClusteringDemo(String filename) throws Exception {
ClusterEvaluation eval;
Instances data;
DBSCAN cl;
data = DataSource.read(filename);
// manual call
cl = new DBSCAN();
cl.setMinPoints(6);
cl.setEpsilon(0.05);
cl.buildClusterer(data);
eval = new ClusterEvaluation();
eval.setClusterer(cl);
eval.evaluateClusterer(new Instances(data));
System.out.println(eval.clusterResultsToString());
//setup visualization
PlotData2D predData = ClustererPanel.setUpVisualizableInstances(data, eval);
VisualizePanel vp = new VisualizePanel();
vp.addPlot(predData);
// display data
JFrame jf = new JFrame("Weka Clusterer Visualize: " + vp.getName());
jf.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE);
jf.setSize(500, 400);
jf.getContentPane().setLayout(new BorderLayout());
jf.getContentPane().add(vp, BorderLayout.CENTER);
jf.setVisible(true);
}
cl是DBSCAN类,我只实现可视化。谁能教教我如何获取核心点值?
【问题讨论】:
标签: cluster-analysis data-mining dbscan