亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? euclidiandataobject.java

?? Weka
?? JAVA
字號:
/* *    This program is free software; you can redistribute it and/or modify *    it under the terms of the GNU General Public License as published by *    the Free Software Foundation; either version 2 of the License, or *    (at your option) any later version. * *    This program is distributed in the hope that it will be useful, *    but WITHOUT ANY WARRANTY; without even the implied warranty of *    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the *    GNU General Public License for more details. * *    You should have received a copy of the GNU General Public License *    along with this program; if not, write to the Free Software *    Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. *//* *    Copyright (C) 2004 *    & Matthias Schubert (schubert@dbs.ifi.lmu.de) *    & Zhanna Melnikova-Albrecht (melnikov@cip.ifi.lmu.de) *    & Rainer Holzmann (holzmann@cip.ifi.lmu.de) */package weka.clusterers.forOPTICSAndDBScan.DataObjects;import weka.clusterers.forOPTICSAndDBScan.Databases.Database;import weka.core.Attribute;import weka.core.Instance;import weka.core.Utils;import java.io.Serializable;/** * <p> * EuclidianDataObject.java <br/> * Authors: Rainer Holzmann, Zhanna Melnikova-Albrecht, Matthias Schubert <br/> * Date: Aug 19, 2004 <br/> * Time: 5:50:22 PM <br/> * $ Revision 1.4 $ <br/> * </p> * * @author Matthias Schubert (schubert@dbs.ifi.lmu.de) * @author Zhanna Melnikova-Albrecht (melnikov@cip.ifi.lmu.de) * @author Rainer Holzmann (holzmann@cip.ifi.lmu.de) * @version $Revision: 1.3 $ */public class EuclidianDataObject    implements DataObject, Serializable {    /** for serialization */    private static final long serialVersionUID = -4408119914898291075L;    /**     * Holds the original instance     */    private Instance instance;    /**     * Holds the (unique) key that is associated with this DataObject     */    private String key;    /**     * Holds the ID of the cluster, to which this DataObject is assigned     */    private int clusterID;    /**     * Holds the status for this DataObject (true, if it has been processed, else false)     */    private boolean processed;    /**     * Holds the coreDistance for this DataObject     */    private double c_dist;    /**     * Holds the reachabilityDistance for this DataObject     */    private double r_dist;    /**     * Holds the database, that is the keeper of this DataObject     */    private Database database;    // *****************************************************************************************************************    // constructors    // *****************************************************************************************************************    /**     * Constructs a new DataObject. The original instance is kept as instance-variable     * @param originalInstance the original instance     */    public EuclidianDataObject(Instance originalInstance, String key, Database database) {        this.database = database;        this.key = key;        instance = originalInstance;        clusterID = DataObject.UNCLASSIFIED;        processed = false;        c_dist = DataObject.UNDEFINED;        r_dist = DataObject.UNDEFINED;    }    // *****************************************************************************************************************    // methods    // *****************************************************************************************************************    /**     * Compares two DataObjects in respect to their attribute-values     * @param dataObject The DataObject, that is compared with this.dataObject     * @return Returns true, if the DataObjects correspond in each value, else returns false     */    public boolean equals(DataObject dataObject) {        if (this == dataObject) return true;        if (!(dataObject instanceof EuclidianDataObject)) return false;        final EuclidianDataObject euclidianDataObject = (EuclidianDataObject) dataObject;        if (getInstance().equalHeaders(euclidianDataObject.getInstance())) {            for (int i = 0; i < getInstance().numAttributes(); i++) {                double i_value_Instance_1 = getInstance().valueSparse(i);                double i_value_Instance_2 = euclidianDataObject.getInstance().valueSparse(i);                if (i_value_Instance_1 != i_value_Instance_2) return false;            }            return true;        }        return false;    }    /**     * Calculates the euclidian-distance between dataObject and this.dataObject     * @param dataObject The DataObject, that is used for distance-calculation with this.dataObject     * @return double-value The euclidian-distance between dataObject and this.dataObject     *                      NaN, if the computation could not be performed     */    public double distance(DataObject dataObject) {        double dist = 0.0;        if (!(dataObject instanceof EuclidianDataObject)) return Double.NaN;        if (getInstance().equalHeaders(dataObject.getInstance())) {            for (int i = 0; i < getInstance().numAttributes(); i++) {                double cDistance = computeDistance(getInstance().index(i),                        getInstance().valueSparse(i),                        dataObject.getInstance().valueSparse(i));                dist += Math.pow(cDistance, 2.0);            }            return Math.sqrt(dist);        }        return Double.NaN;    }    /**     * Performs euclidian-distance-calculation between two given values     * @param index of the attribute within the DataObject's instance     * @param v value_1     * @param v1 value_2     * @return double norm-distance between value_1 and value_2     */    private double computeDistance(int index, double v, double v1) {        switch (getInstance().attribute(index).type()) {            case Attribute.NOMINAL:                return (Instance.isMissingValue(v) || Instance.isMissingValue(v1)                        || ((int) v != (int) v1)) ? 1 : 0;            case Attribute.NUMERIC:                if (Instance.isMissingValue(v) || Instance.isMissingValue(v1)) {                    if (Instance.isMissingValue(v) && Instance.isMissingValue(v1))                        return 1;                    else {                        return (Instance.isMissingValue(v)) ? norm(v1, index)                                : norm(v, index);                    }                } else                    return norm(v, index) - norm(v1, index);            default:                return 0;        }    }    /**     * Normalizes a given value of a numeric attribute.     *     * @param x the value to be normalized     * @param i the attribute's index     */    private double norm(double x, int i) {        if (Double.isNaN(database.getAttributeMinValues()[i])                || Utils.eq(database.getAttributeMaxValues()[i], database.getAttributeMinValues()[i])) {            return 0;        } else {            return (x - database.getAttributeMinValues()[i]) /                    (database.getAttributeMaxValues()[i] - database.getAttributeMinValues()[i]);        }    }    /**     * Returns the original instance     * @return originalInstance     */    public Instance getInstance() {        return instance;    }    /**     * Returns the key for this DataObject     * @return key     */    public String getKey() {        return key;    }    /**     * Sets the key for this DataObject     * @param key The key is represented as string     */    public void setKey(String key) {        this.key = key;    }    /**     * Sets the clusterID (cluster), to which this DataObject belongs to     * @param clusterID Number of the Cluster     */    public void setClusterLabel(int clusterID) {        this.clusterID = clusterID;    }    /**     * Returns the clusterID, to which this DataObject belongs to     * @return clusterID     */    public int getClusterLabel() {        return clusterID;    }    /**     * Marks this dataObject as processed     * @param processed True, if the DataObject has been already processed, false else     */    public void setProcessed(boolean processed) {        this.processed = processed;    }    /**     * Gives information about the status of a dataObject     * @return True, if this dataObject has been processed, else false     */    public boolean isProcessed() {        return processed;    }    /**     * Sets a new coreDistance for this dataObject     * @param c_dist coreDistance     */    public void setCoreDistance(double c_dist) {        this.c_dist = c_dist;    }    /**     * Returns the coreDistance for this dataObject     * @return coreDistance     */    public double getCoreDistance() {        return c_dist;    }    /**     * Sets a new reachability-distance for this dataObject     */    public void setReachabilityDistance(double r_dist) {        this.r_dist = r_dist;    }    /**     * Returns the reachabilityDistance for this dataObject     */    public double getReachabilityDistance() {        return r_dist;    }    public String toString() {        return instance.toString();    }    // *****************************************************************************************************************    // inner classes    // *****************************************************************************************************************}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
国产成人亚洲综合a∨婷婷| 4hu四虎永久在线影院成人| 欧美日韩精品三区| 久久久久久毛片| 日韩综合小视频| 99国内精品久久| 久久精品欧美一区二区三区不卡| 亚洲一区二区在线免费观看视频| 国产精品77777| 日韩视频中午一区| 亚洲国产欧美日韩另类综合| 国产成人综合亚洲网站| 日韩欧美国产一区在线观看| 亚洲一区影音先锋| 91亚洲午夜精品久久久久久| 国产精品免费网站在线观看| 国产一区91精品张津瑜| 日韩一区和二区| 日韩黄色片在线观看| 在线观看av一区| 亚洲色大成网站www久久九九| 国产999精品久久| 日本一区二区免费在线 | 色诱视频网站一区| 中文在线一区二区| 成人激情电影免费在线观看| 久久久不卡网国产精品二区| 国产乱人伦精品一区二区在线观看 | 亚洲午夜一二三区视频| 一本色道a无线码一区v| 成人欧美一区二区三区视频网页| 成人免费的视频| 国产三级精品三级| 暴力调教一区二区三区| 日韩美女久久久| 99vv1com这只有精品| 亚洲视频一区在线| 在线视频欧美区| 石原莉奈在线亚洲二区| 91精品中文字幕一区二区三区| 日产国产欧美视频一区精品| 91精品在线一区二区| 激情综合色丁香一区二区| 337p粉嫩大胆噜噜噜噜噜91av| 福利一区二区在线观看| 综合精品久久久| 欧美男女性生活在线直播观看| 日韩av在线发布| 久久久综合网站| 91美女福利视频| 日韩精品每日更新| 26uuuu精品一区二区| 成人国产视频在线观看| 一区二区三区精品久久久| 精品日韩欧美一区二区| 国产成人激情av| 亚洲一区二区三区不卡国产欧美| 欧美一卡2卡3卡4卡| 国产精品911| 亚洲国产色一区| 精品成人一区二区三区| av动漫一区二区| 亚洲电影中文字幕在线观看| www激情久久| 欧美在线|欧美| 精品亚洲porn| 一个色妞综合视频在线观看| 日韩久久久久久| 91网站视频在线观看| 蜜臀a∨国产成人精品| 国产女人18毛片水真多成人如厕 | 色综合久久88色综合天天免费| 日韩高清一级片| 中文字幕一区二区三区蜜月 | 男女男精品视频网| 亚洲欧洲性图库| 欧美成人乱码一区二区三区| 成人激情午夜影院| 久久精品国产亚洲一区二区三区| 1000精品久久久久久久久| 日韩欧美一卡二卡| 91福利在线导航| 国产成人aaaa| 麻豆精品久久久| 亚洲国产综合色| 国产精品水嫩水嫩| 精品sm捆绑视频| 91精品国产综合久久福利| 91在线观看下载| 国产一区不卡视频| 久久精品国产在热久久| 亚洲3atv精品一区二区三区| 国产精品久久久久久久久免费丝袜| 欧美一区二区视频观看视频| 在线观看亚洲精品| 99久久精品免费看国产免费软件| 国产一区二区在线视频| 久久成人精品无人区| 亚洲国产一区在线观看| 一区二区三区视频在线观看| 亚洲欧洲成人精品av97| 日本一区二区三区国色天香| 久久精品人人做人人爽人人| 精品久久99ma| 欧美mv和日韩mv国产网站| 91精品中文字幕一区二区三区| 欧美日韩精品欧美日韩精品一综合| 在线欧美日韩精品| 色综合咪咪久久| 91麻豆swag| 欧洲一区二区三区免费视频| 色呦呦一区二区三区| 色综合色狠狠综合色| 色丁香久综合在线久综合在线观看| 色综合久久久久综合体 | 国产精选一区二区三区| 国产在线播放一区二区三区| 久久99精品久久久| 国产一区三区三区| 国产精品69久久久久水密桃| 国产精品中文字幕欧美| 国产a久久麻豆| 91丨国产丨九色丨pron| 欧美精品v国产精品v日韩精品 | 91在线高清观看| 色综合久久中文综合久久97| 日本丰满少妇一区二区三区| 在线一区二区三区做爰视频网站| 欧美在线一二三| 日韩限制级电影在线观看| 欧美大片免费久久精品三p| 欧美精品一区二区三区高清aⅴ| 亚洲精品在线电影| 欧美国产一区视频在线观看| 自拍偷拍国产亚洲| 日韩经典一区二区| 国产精品一区二区你懂的| 北条麻妃国产九九精品视频| 日本道在线观看一区二区| 欧美精品视频www在线观看| 久久夜色精品国产噜噜av | 久久影院视频免费| 国产精品毛片高清在线完整版 | 欧美丝袜自拍制服另类| 欧美本精品男人aⅴ天堂| 国产丝袜欧美中文另类| 亚洲国产精品人人做人人爽| 国产一区中文字幕| 色婷婷国产精品久久包臀| 日韩亚洲电影在线| 最新欧美精品一区二区三区| 三级精品在线观看| www.av亚洲| 欧美mv日韩mv国产网站| 一区二区三区四区蜜桃| 国内成人精品2018免费看| 色噜噜夜夜夜综合网| 亚洲精品一线二线三线| 亚洲精品国产精华液| 国产精华液一区二区三区| 91精品国产欧美一区二区18| 国产精品久久久久毛片软件| 奇米在线7777在线精品| 91久久精品一区二区三| 久久亚洲影视婷婷| 日韩精品色哟哟| 欧美做爰猛烈大尺度电影无法无天| 欧美精品一区二区三区蜜桃视频| 亚洲一区电影777| aaa亚洲精品| 久久久噜噜噜久久人人看 | 五月天激情综合| 成人综合婷婷国产精品久久免费| 9191成人精品久久| 亚洲美女淫视频| 不卡的av在线| 久久久精品人体av艺术| 日韩1区2区3区| 欧美三级一区二区| 亚洲日本va午夜在线影院| 国产精品一二三四| 精品电影一区二区三区 | 99re亚洲国产精品| 国产性做久久久久久| 国产综合久久久久久鬼色| 日韩一区二区在线观看视频 | a在线欧美一区| 国产欧美日韩在线观看| 99精品偷自拍| 国产欧美一区二区精品仙草咪 | 日韩高清国产一区在线| 欧美精品在线观看播放| 亚洲成人免费av| 欧美视频完全免费看| 亚洲亚洲人成综合网络| 欧美性猛交xxxx乱大交退制版| 一区二区三区在线视频免费 | 欧美人动与zoxxxx乱| 亚洲伊人色欲综合网| 欧美日韩一区二区三区在线看|