Package weka.clusterers.forOPTICSAndDBScan.DataObjects

Examples of weka.clusterers.forOPTICSAndDBScan.DataObjects.DataObject


            return false;
        }

        /** dataObject is coreObject */
        for (int i = 0; i < seedList.size(); i++) {
            DataObject seedListDataObject = (DataObject) seedList.get(i);
            /** label this seedListDataObject with the current clusterID, because it is in epsilon-range */
            seedListDataObject.setClusterLabel(clusterID);
            if (seedListDataObject.equals(dataObject)) {
                seedList.remove(i);
                i--;
            }
        }

        /** Iterate the seedList of the startDataObject */
        for (int j = 0; j < seedList.size(); j++) {
            DataObject seedListDataObject = (DataObject) seedList.get(j);
            List seedListDataObject_Neighbourhood = database.epsilonRangeQuery(getEpsilon(), seedListDataObject);

            /** seedListDataObject is coreObject */
            if (seedListDataObject_Neighbourhood.size() >= getMinPoints()) {
                for (int i = 0; i < seedListDataObject_Neighbourhood.size(); i++) {
                    DataObject p = (DataObject) seedListDataObject_Neighbourhood.get(i);
                    if (p.getClusterLabel() == DataObject.UNCLASSIFIED || p.getClusterLabel() == DataObject.NOISE) {
                        if (p.getClusterLabel() == DataObject.UNCLASSIFIED) {
                            seedList.add(p);
                        }
                        p.setClusterLabel(clusterID);
                    }
                }
            }
            seedList.remove(j);
            j--;
View Full Code Here


        stringBuffer.append("Number of generated clusters: " + numberOfGeneratedClusters + "\n");
        DecimalFormat decimalFormat = new DecimalFormat(".##");
        stringBuffer.append("Elapsed time: " + decimalFormat.format(elapsedTime) + "\n\n");

        for (int i = 0; i < database.size(); i++) {
            DataObject dataObject = database.getDataObject(Integer.toString(i));
            stringBuffer.append("(" + Utils.doubleToString(Double.parseDouble(dataObject.getKey()),
                    (Integer.toString(database.size()).length()), 0) + ".) "
                    + Utils.padRight(dataObject.toString(), 69) + "  -->  " +
                    ((dataObject.getClusterLabel() == DataObject.NOISE) ?
                    "NOISE\n" : dataObject.getClusterLabel() + "\n"));
        }
        return stringBuffer.toString() + "\n";
    }
View Full Code Here

                i = 6;
            if ((x / i) == recentIndex)
                return false;
            else
                recentIndex = x / i;
            DataObject dataObject = null;
            try {
                dataObject = (DataObject) resultVector.elementAt(recentIndex);
            } catch (Exception e) {
            }
            if (dataObject != null) {
                if (!isShowCoreDistances() && !isShowReachabilityDistances()) {
                    setNewToolTip("<html><body><b>Please select a distance" +
                            "</b></body></html>"
                    );
                } else
                    setNewToolTip("<html><body><table>" +
                            "<tr><td>DataObject:</td><td>" + dataObject + "</td></tr>" +
                            "<tr><td>Key:</td><td>" + dataObject.getKey() + "</td></tr>" +
                            "<tr><td>" +
                            (isShowCoreDistances() ? "<b>" : "") + "Core-Distance:" +
                            (isShowCoreDistances() ? "</b>" : "") +
                            "</td><td>" +
                            (isShowCoreDistances() ? "<b>" : "") +
                            ((dataObject.getCoreDistance() == DataObject.UNDEFINED) ? "UNDEFINED" :
                            Utils.doubleToString(dataObject.getCoreDistance(), 3, 5)) +
                            (isShowCoreDistances() ? "</b>" : "") +
                            "</td></tr>" +
                            "<tr><td>" +
                            (isShowReachabilityDistances() ? "<b>" : "") + "Reachability-Distance:" +
                            (isShowReachabilityDistances() ? "</b>" : "") +
                            "</td><td>" +
                            (isShowReachabilityDistances() ? "<b>" : "") +
                            ((dataObject.getReachabilityDistance() == DataObject.UNDEFINED) ? "UNDEFINED" :
                            Utils.doubleToString(dataObject.getReachabilityDistance(), 3, 5)) +
                            (isShowReachabilityDistances() ? "</b>" : "") +
                            "</td></tr>" +
                            "</table></body></html>"
                    );
            }
View Full Code Here

     * @param row The row of the value
     * @param column The column of the value
     * @return value
     * */
    public Object getValueAt(int row, int column) {
        DataObject dataObject = (DataObject) resultVector.elementAt(row);

        switch (column) {
            case 0:
                return dataObject.getKey();
            case 1:
                return dataObject;
            case 2:
                return ((dataObject.getCoreDistance() == DataObject.UNDEFINED) ?
                        "UNDEFINED" :
                        Utils.doubleToString(dataObject.getCoreDistance(), 3, 5));
            case 3:
                return ((dataObject.getReachabilityDistance() == DataObject.UNDEFINED) ?
                        "UNDEFINED" :
                        Utils.doubleToString(dataObject.getReachabilityDistance(), 3, 5));
            default:
                return "";
        }
    }
View Full Code Here

            attributeMinValues[i] = attributeMaxValues[i] = Double.NaN;
        }

        Iterator iterator = dataObjectIterator();
        while (iterator.hasNext()) {
            DataObject dataObject = (DataObject) iterator.next();
            for (int j = 0; j < getInstances().numAttributes(); j++) {
                if (Double.isNaN(attributeMinValues[j])) {
                    attributeMinValues[j] = dataObject.getInstance().value(j);
                    attributeMaxValues[j] = dataObject.getInstance().value(j);
                } else {
                    if (dataObject.getInstance().value(j) < attributeMinValues[j])
                        attributeMinValues[j] = dataObject.getInstance().value(j);
                    if (dataObject.getInstance().value(j) > attributeMaxValues[j])
                        attributeMaxValues[j] = dataObject.getInstance().value(j);
                }
            }
        }
    }
View Full Code Here

     */
    public List epsilonRangeQuery(double epsilon, DataObject queryDataObject) {
        ArrayList epsilonRange_List = new ArrayList();
        Iterator iterator = dataObjectIterator();
        while (iterator.hasNext()) {
            DataObject dataObject = (DataObject) iterator.next();
            double distance = queryDataObject.distance(dataObject);
            if (distance < epsilon) {
                epsilonRange_List.add(dataObject);
            }
        }
View Full Code Here

        List epsilonRange_List = new ArrayList();

        PriorityQueue priorityQueue = new PriorityQueue();

        while (iterator.hasNext()) {
            DataObject next_dataObject = (DataObject) iterator.next();
            double dist = dataObject.distance(next_dataObject);

            if (dist <= epsilon) epsilonRange_List.add(new EpsilonRange_ListElement(dist, next_dataObject));

            if (priorityQueue.size() < k) {
View Full Code Here

     * @return true if the database contains dataObject_Query, else false
     */
    public boolean contains(DataObject dataObject_Query) {
        Iterator iterator = dataObjectIterator();
        while (iterator.hasNext()) {
            DataObject dataObject = (DataObject) iterator.next();
            if (dataObject.equals(dataObject_Query)) return true;
        }
        return false;
    }
View Full Code Here

TOP

Related Classes of weka.clusterers.forOPTICSAndDBScan.DataObjects.DataObject

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.