public Hiearchical(LinkageCriterion criterion, int reqClust, double[,] dMatrix, List <DataPoint> p) { _criterion = criterion; LinkageClusters = new List <Cluster>(); points = new List <DataPoint>(); _distanceMatrix = dMatrix; _clusters = N = _distanceMatrix.GetLength(0); _reqClusters = reqClust; points = p; switch (_criterion) { case LinkageCriterion.SINGLE: this._linkage = new SingleLinkage(); break; case LinkageCriterion.COMPLETE: this._linkage = new CompleteLinkage(); break; case LinkageCriterion.AVERAGE: this._linkage = new AverageLinkage(); break; case LinkageCriterion.WARD: this._linkage = new WardLinkage(); break; } }
public Hiearchical(LinkageCriterion criterion, int reqClust, List <DataPoint> p) { _criterion = criterion; LinkageClusters = new List <Cluster>(); points = new List <DataPoint>(); _clusters = N = p.Count(); _reqClusters = reqClust; points = p; switch (_criterion) { case LinkageCriterion.SINGLE: this._linkage = new SingleLinkage(); break; case LinkageCriterion.COMPLETE: this._linkage = new CompleteLinkage(); break; case LinkageCriterion.AVERAGE: this._linkage = new AverageLinkage(); break; case LinkageCriterion.WARD: this._linkage = new WardLinkage(); break; } }