diff options
author | Erich Schubert <erich@debian.org> | 2012-12-14 20:45:15 +0100 |
---|---|---|
committer | Andrej Shadura <andrewsh@debian.org> | 2019-03-09 22:30:35 +0000 |
commit | 357b2761a2c0ded8cad5e4d3c1e667b7639ff7a6 (patch) | |
tree | 3dd8947bb70a67c221adc3cd4359ba1d385e2f3c /src/tutorial/outlier/DistanceStddevOutlier.java | |
parent | 4343785ebed9d4145f417d86d581f18a0d31e4ac (diff) | |
parent | b7b404fd7a726774d442562d11659d7b5368cdb9 (diff) |
Import Debian changes 0.5.5-1
elki (0.5.5-1) unstable; urgency=low
* New upstream release: 0.5.5 interim release.
Diffstat (limited to 'src/tutorial/outlier/DistanceStddevOutlier.java')
-rw-r--r-- | src/tutorial/outlier/DistanceStddevOutlier.java | 24 |
1 files changed, 12 insertions, 12 deletions
diff --git a/src/tutorial/outlier/DistanceStddevOutlier.java b/src/tutorial/outlier/DistanceStddevOutlier.java index 56c9e002..97b9898c 100644 --- a/src/tutorial/outlier/DistanceStddevOutlier.java +++ b/src/tutorial/outlier/DistanceStddevOutlier.java @@ -9,14 +9,14 @@ import de.lmu.ifi.dbs.elki.database.QueryUtil; import de.lmu.ifi.dbs.elki.database.datastore.DataStoreFactory; import de.lmu.ifi.dbs.elki.database.datastore.DataStoreUtil; import de.lmu.ifi.dbs.elki.database.datastore.WritableDoubleDataStore; -import de.lmu.ifi.dbs.elki.database.ids.DBID; import de.lmu.ifi.dbs.elki.database.ids.DBIDIter; -import de.lmu.ifi.dbs.elki.database.query.DistanceResultPair; +import de.lmu.ifi.dbs.elki.database.ids.DBIDUtil; import de.lmu.ifi.dbs.elki.database.query.knn.KNNQuery; -import de.lmu.ifi.dbs.elki.database.query.knn.KNNResult; import de.lmu.ifi.dbs.elki.database.relation.MaterializedRelation; import de.lmu.ifi.dbs.elki.database.relation.Relation; import de.lmu.ifi.dbs.elki.distance.distancefunction.DistanceFunction; +import de.lmu.ifi.dbs.elki.distance.distanceresultlist.DistanceDBIDResultIter; +import de.lmu.ifi.dbs.elki.distance.distanceresultlist.KNNResult; import de.lmu.ifi.dbs.elki.distance.distancevalue.NumberDistance; import de.lmu.ifi.dbs.elki.logging.Logging; import de.lmu.ifi.dbs.elki.math.DoubleMinMax; @@ -42,7 +42,7 @@ public class DistanceStddevOutlier<O, D extends NumberDistance<D, ?>> extends Ab /** * Class logger */ - private static final Logging logger = Logging.getLogger(DistanceStddevOutlier.class); + private static final Logging LOG = Logging.getLogger(DistanceStddevOutlier.class); /** * Number of neighbors to get. @@ -77,19 +77,18 @@ public class DistanceStddevOutlier<O, D extends NumberDistance<D, ?>> extends Ab // Iterate over all objects for(DBIDIter iter = relation.iterDBIDs(); iter.valid(); iter.advance()) { - DBID id = iter.getDBID(); - KNNResult<D> neighbors = knnq.getKNNForDBID(id, k); + KNNResult<D> neighbors = knnq.getKNNForDBID(iter, k); // Aggregate distances MeanVariance mv = new MeanVariance(); - for(DistanceResultPair<D> neighbor : neighbors) { + for(DistanceDBIDResultIter<D> neighbor = neighbors.iter(); neighbor.valid(); neighbor.advance()) { // Skip the object itself. The 0 is not very informative. - if(id.sameDBID(neighbor.getDBID())) { + if(DBIDUtil.equal(iter, neighbor)) { continue; } mv.put(neighbor.getDistance().doubleValue()); } // Store score - scores.putDouble(id, mv.getSampleStddev()); + scores.putDouble(iter, mv.getSampleStddev()); } // Wrap the result in the standard containers @@ -106,7 +105,7 @@ public class DistanceStddevOutlier<O, D extends NumberDistance<D, ?>> extends Ab @Override protected Logging getLogger() { - return logger; + return LOG; } /** @@ -123,7 +122,7 @@ public class DistanceStddevOutlier<O, D extends NumberDistance<D, ?>> extends Ab /** * Option ID for parameterization. */ - public static final OptionID K_ID = OptionID.getOrCreateOptionID("stddevout.k", "Number of neighbors to get for stddev based outlier detection."); + public static final OptionID K_ID = new OptionID("stddevout.k", "Number of neighbors to get for stddev based outlier detection."); /** * Number of neighbors to get @@ -134,7 +133,8 @@ public class DistanceStddevOutlier<O, D extends NumberDistance<D, ?>> extends Ab protected void makeOptions(Parameterization config) { // The super class has the distance function parameter! super.makeOptions(config); - IntParameter kParam = new IntParameter(K_ID, new GreaterConstraint(1)); + IntParameter kParam = new IntParameter(K_ID); + kParam.addConstraint(new GreaterConstraint(1)); if(config.grab(kParam)) { k = kParam.getValue(); } |