当前位置: 首页>>代码示例>>Java>>正文


Java SimpleKMeans.setPreserveInstancesOrder方法代码示例

本文整理汇总了Java中weka.clusterers.SimpleKMeans.setPreserveInstancesOrder方法的典型用法代码示例。如果您正苦于以下问题:Java SimpleKMeans.setPreserveInstancesOrder方法的具体用法?Java SimpleKMeans.setPreserveInstancesOrder怎么用?Java SimpleKMeans.setPreserveInstancesOrder使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在weka.clusterers.SimpleKMeans的用法示例。


在下文中一共展示了SimpleKMeans.setPreserveInstancesOrder方法的5个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。

示例1: clusterData

import weka.clusterers.SimpleKMeans; //导入方法依赖的package包/类
public void clusterData(){	
	kmeans = new SimpleKMeans();
	kmeans.setSeed(10);
	try {
		kmeans.setPreserveInstancesOrder(true);
		kmeans.setNumClusters(10);
		kmeans.buildClusterer(cpu);
		int[] assignments = kmeans.getAssignments();
		int i = 0;
		for(int clusterNum : assignments) {
			System.out.printf("Instance %d -> Cluster %d\n", i, clusterNum);
			i++;
		}
	} catch (Exception e1) {
	}
}
 
开发者ID:PacktPublishing,项目名称:Java-Data-Science-Cookbook,代码行数:17,代码来源:WekaClusterTest.java

示例2: main

import weka.clusterers.SimpleKMeans; //导入方法依赖的package包/类
public static void main(String args[]) throws Exception {
        //read the input params
        readParams(args);
        CSVLoader loader = new CSVLoader();
        loader.setSource(inFile);
        Instances data = loader.getDataSet();
        System.setErr(err);//hack to avoid some error messages

        // Create the KMeans object.
        SimpleKMeans kmeans = new SimpleKMeans();
        kmeans.setNumClusters(K);
        kmeans.setMaxIterations(maxIteration);
        kmeans.setPreserveInstancesOrder(true);

        // Perform K-Means clustering.
        try {  
            kmeans.buildClusterer(data);
        } catch (Exception ex) {
            System.err.println("Unable to buld Clusterer: " + ex.getMessage());
            ex.printStackTrace();
        }

        // print out the cluster centroids
        Instances centroids = kmeans.getClusterCentroids();
        for (int i = 0; i < K; i++) {
            System.out.print("Cluster " + i + " size: " + kmeans.getClusterSizes()[i]);
            System.out.println(" Centroid: " + centroids.instance(i));
        }

//        Print Assignments:
//        int[] assignments = kmeans.getAssignments();
//        System.out.println("Length: "+assignments.length);
//        for (int i = 0; i < assignments.length; i++) {
//            System.out.println(assignments[i]);
//            
//        }

    }
 
开发者ID:project-asap,项目名称:IReS-Platform,代码行数:39,代码来源:KMeans.java

示例3: buildClusteredSeries

import weka.clusterers.SimpleKMeans; //导入方法依赖的package包/类
private List<Series<Number, Number>> buildClusteredSeries() throws Exception {
	List<XYChart.Series<Number, Number>> clusteredSeries = new ArrayList<>();

	// to build the cluster we remove the class information
	Remove remove = new Remove();
	remove.setAttributeIndices("3");
	remove.setInputFormat(data);
	Instances dataToBeClustered = Filter.useFilter(data, remove);

	SimpleKMeans kmeans = new SimpleKMeans();
	kmeans.setSeed(10);
	kmeans.setPreserveInstancesOrder(true);
	kmeans.setNumClusters(3);
	kmeans.buildClusterer(dataToBeClustered);

	IntStream.range(0, 3).mapToObj(i -> {
		Series<Number, Number> newSeries = new XYChart.Series<>();
		newSeries.setName(String.valueOf(i));
		return newSeries;
	}).forEach(clusteredSeries::add);

	int[] assignments = kmeans.getAssignments();
	for (int i = 0; i < assignments.length; i++) {
		int clusterNum = assignments[i];
		clusteredSeries.get(clusterNum).getData().add(instancetoChartData(data.get(i)));
	}

	return clusteredSeries;
}
 
开发者ID:jesuino,项目名称:java-ml-projects,代码行数:30,代码来源:Clustering.java

示例4: run

import weka.clusterers.SimpleKMeans; //导入方法依赖的package包/类
public static void run(String inputFile, String outputFileDistribution, String outputFileSupervised,
					  int numClusters, int skipLines) throws Exception {
	
	SimpleKMeans kmeans = new SimpleKMeans();
	 
	kmeans.setPreserveInstancesOrder(true);
	kmeans.setNumClusters(numClusters);

	BufferedReader datafile = readDataFile(inputFile); 
	Instances data = new Instances(datafile);

	kmeans.buildClusterer(data);

	int[] assignments = kmeans.getAssignments();
	
	calculateClusterDistribution(assignments, numClusters, outputFileDistribution);
	rebuildArffFileWithClusterNumber(inputFile, outputFileSupervised, assignments, skipLines);
	
}
 
开发者ID:transcedentalia,项目名称:master-thesis-project,代码行数:20,代码来源:KMeans.java

示例5: kmeans

import weka.clusterers.SimpleKMeans; //导入方法依赖的package包/类
/**
 * K-Means Clustering
 * @param data - matrix of observations (numObs x numFeatures)
 * @param k - number of clusters
 */
public Cluster[] kmeans(double[][] data, int numObs, int numFeatures, int k) {
	Instances ds = convertMatrixToWeka(data, numObs, numFeatures);
	
	// uses Euclidean distance by default
	SimpleKMeans clusterer = new SimpleKMeans();
	try {
		clusterer.setPreserveInstancesOrder(true);
		clusterer.setNumClusters(k);
		clusterer.buildClusterer(ds);
		
		// cluster centers
		Instances centers = clusterer.getClusterCentroids();
		Cluster[] clusters = new Cluster[centers.numInstances()];
		for(int i = 0; i < centers.numInstances(); i++) {
			Instance inst = centers.instance(i);
			double[] mean = new double[inst.numAttributes()];
			for(int j = 0; j < mean.length; j++) {
				mean[j] = inst.value(j);
			}
			clusters[i] = new Cluster(mean, i);
		}
		
		// cluster members
		int[] assignments = clusterer.getAssignments();
		for(int i = 0; i < assignments.length; i++) {
			clusters[assignments[i]].addMember(i);
		}
		return clusters;
	} catch (Exception e) {
		e.printStackTrace();
		System.exit(-1);
		return null;
	}
	
}
 
开发者ID:viq854,项目名称:lichee,代码行数:41,代码来源:AAFClusterer.java


注:本文中的weka.clusterers.SimpleKMeans.setPreserveInstancesOrder方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。