0001
0002
0003
0004
0005
0006
0007
0008
0009
0010
0011
0012
0013
0014
0015
0016
0017
0018 package org.apache.spark.mllib.clustering;
0019
0020 import java.util.Arrays;
0021 import java.util.List;
0022
0023 import static org.junit.Assert.assertEquals;
0024
0025 import org.junit.Test;
0026
0027 import org.apache.spark.SharedSparkSession;
0028 import org.apache.spark.api.java.JavaRDD;
0029 import org.apache.spark.mllib.linalg.Vector;
0030 import org.apache.spark.mllib.linalg.Vectors;
0031
0032 public class JavaGaussianMixtureSuite extends SharedSparkSession {
0033
0034 @Test
0035 public void runGaussianMixture() {
0036 List<Vector> points = Arrays.asList(
0037 Vectors.dense(1.0, 2.0, 6.0),
0038 Vectors.dense(1.0, 3.0, 0.0),
0039 Vectors.dense(1.0, 4.0, 6.0)
0040 );
0041
0042 JavaRDD<Vector> data = jsc.parallelize(points, 2);
0043 GaussianMixtureModel model = new GaussianMixture().setK(2).setMaxIterations(1).setSeed(1234)
0044 .run(data);
0045 assertEquals(2, model.gaussians().length);
0046 JavaRDD<Integer> predictions = model.predict(data);
0047 predictions.first();
0048 }
0049 }