@@ -0,0 +1,1033 @@
+package clusterassign;%0A%0Aimport java.io.IOException;%0A%0Aimport org.apache.hadoop.mapreduce.Reducer;%0A%0Aimport datapoint.DataPoint;%0A%0A/**%0A  * Reducer class for the Cluster Assign step%0A  */%0Apublic class ClusterAssignReducer extends Reducer%3CDataPoint, DataPoint, DataPoint, DataPoint%3E%0A%7B%0A%09/**%0A%09  * Overridden reduce method of the Reduce class%0A%09  * Parameters:%09DataPoint key, a k-Means Centroid%0A%09  * %09%09%09Iterable%3CDataPoint%3E value, A list of Data Points associated to this Centriod%0A%09  *%09%09%09%09Context context%0A%09  * Returns:%09(key, value) pairs where%0A%09  *%09%09%09%09key is a k-Means Centroid associated with the current Data Point%0A%09  *%09%09%09%09value is one of the Data Points in the Iterable list%0A%09  * %0A%09  * The function receives a (key, value) pair.%0A%09  * For every point in the Iterable list, it outputs the pair (k_Means Centroid, Data Point).%0A%09  */%0A%09@Override%0A%09public void reduce(DataPoint key, Iterable%3CDataPoint%3E values, Context context)%0A%09%09throws IOException, InterruptedException%0A%09%7B%0A%09%09for(DataPoint dataPoint : values)%0A%09%09%09context.write(key, dataPoint);%0A%09%7D%0A%7D%0A

Create ClusterAssignReducer.java