?? cluster.java
字號(hào):
package cluster.kmeans;
import java.util.Vector;
/**
* This class represents a Cluster in a Cluster Analysis Instance. A Cluster is associated
* with one and only one JCA Instance. A Cluster is related to more than one DataPoints and
* one centroid.
* @author Shyam Sivaraman
* @version 1.1
* @see DataPoint
* @see Centroid
*/
class Cluster {
private String mName;
private Centroid mCentroid;
private double mSumSqr;
private Vector mDataPoints;
public Cluster(String name) {
this.mName = name;
this.mCentroid = null; //will be set by calling setCentroid()
mDataPoints = new Vector();
}
public void setCentroid(Centroid c) {
mCentroid = c;
}
public Centroid getCentroid() {
return mCentroid;
}
public void addDataPoint(DataPoint dp) { //called from CAInstance
dp.setCluster(this); //initiates a inner call to calc EuclideanDistance() in DP.
this.mDataPoints.addElement(dp);
calcSumOfSquares();
}
public void removeDataPoint(DataPoint dp) {
this.mDataPoints.removeElement(dp);
calcSumOfSquares();
}
public int getNumDataPoints() {
return this.mDataPoints.size();
}
public DataPoint getDataPoint(int pos) {
return (DataPoint) this.mDataPoints.elementAt(pos);
}
public void calcSumOfSquares() { //called from Centroid
int size = this.mDataPoints.size();
double temp = 0;
for (int i = 0; i < size; i++) {
temp = temp + ((DataPoint)
this.mDataPoints.elementAt(i)).getCurrentEuDt();
}
this.mSumSqr = temp;
}
public double getSumSqr() {
return this.mSumSqr;
}
public String getName() {
return this.mName;
}
public Vector getDataPoints() {
return this.mDataPoints;
}
}
?? 快捷鍵說(shuō)明
復(fù)制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號(hào)
Ctrl + =
減小字號(hào)
Ctrl + -