【转载】java 代码调用kmeans进行聚类

从wekaUI调用kmeans算法后,最后生成的的结果文件中,聚类中心向量表达的不够清晰。参照网上的做法,采用java code中调用weka中的kmeans算法。 这段代码在网络上转载颇多,一时找不到出处。代码如下

ExpandedBlockStart.gifjava code中调用kmeans聚类
import java.io.*;



import weka.clusterers.SimpleKMeans;

import weka.core.DistanceFunction;

//import weka.core.EuclideanDistance;

import weka.core.Instances;

import weka.core.converters.ArffLoader;




public class SimpleCluster {
    
public static void main(String[] args) {

           
// TODO Auto-generated method stub

           Instances ins 
= null;

           Instances tempIns 
= null;

          

           SimpleKMeans KM 
= null;

           
//DistanceFunction disFun = null;

           
try{

              

               File file
= new File("F:\\cluster\\tobeClustered.arff");

               ArffLoader loader 
= new ArffLoader();

               loader.setFile(file);

               ins 
= loader.getDataSet();

              

              

               KM 
= new SimpleKMeans();       

               
//设置聚类要得到的类别数量

               KM.setNumClusters(
10);

              

              

               KM.buildClusterer(ins);

              

              

               tempIns 
= KM.getClusterCentroids();
               System.out.println(
"聚类中心");

               System.out.println(
"CentroIds: " + tempIns);
               
       

              

              

           }
catch(Exception e){

               e.printStackTrace();

           }

        }


    

}

 

转载于:https://www.cnblogs.com/finallyliuyu/archive/2011/03/01/1968147.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值