summaryrefslogtreecommitdiff
path: root/src/de/lmu/ifi/dbs/elki/datasource/parser/ParameterizationFunctionLabelParser.java
diff options
context:
space:
mode:
authorAndrej Shadura <andrewsh@debian.org>2019-03-09 22:30:32 +0000
committerAndrej Shadura <andrewsh@debian.org>2019-03-09 22:30:32 +0000
commitc36aa2a8fd31ca5e225ff30278e910070cd2c8c1 (patch)
treebdfe1a5ccb57999d4d664a2a44121a78c88b19d4 /src/de/lmu/ifi/dbs/elki/datasource/parser/ParameterizationFunctionLabelParser.java
parent89aa1958dbaf9052da0c24706308a2ef8cefa96e (diff)
Import Upstream version 0.5.0~beta2
Diffstat (limited to 'src/de/lmu/ifi/dbs/elki/datasource/parser/ParameterizationFunctionLabelParser.java')
-rw-r--r--src/de/lmu/ifi/dbs/elki/datasource/parser/ParameterizationFunctionLabelParser.java19
1 files changed, 12 insertions, 7 deletions
diff --git a/src/de/lmu/ifi/dbs/elki/datasource/parser/ParameterizationFunctionLabelParser.java b/src/de/lmu/ifi/dbs/elki/datasource/parser/ParameterizationFunctionLabelParser.java
index 8c4f44ae..8e240ae9 100644
--- a/src/de/lmu/ifi/dbs/elki/datasource/parser/ParameterizationFunctionLabelParser.java
+++ b/src/de/lmu/ifi/dbs/elki/datasource/parser/ParameterizationFunctionLabelParser.java
@@ -4,7 +4,7 @@ package de.lmu.ifi.dbs.elki.datasource.parser;
This file is part of ELKI:
Environment for Developing KDD-Applications Supported by Index-Structures
- Copyright (C) 2011
+ Copyright (C) 2012
Ludwig-Maximilians-Universität München
Lehr- und Forschungseinheit für Datenbanksysteme
ELKI Development Team
@@ -23,6 +23,9 @@ package de.lmu.ifi.dbs.elki.datasource.parser;
along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
+import gnu.trove.list.TDoubleList;
+import gnu.trove.list.array.TDoubleArrayList;
+
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStream;
@@ -37,7 +40,7 @@ import de.lmu.ifi.dbs.elki.data.type.TypeUtil;
import de.lmu.ifi.dbs.elki.data.type.VectorFieldTypeInformation;
import de.lmu.ifi.dbs.elki.datasource.bundle.MultipleObjectsBundle;
import de.lmu.ifi.dbs.elki.logging.Logging;
-import de.lmu.ifi.dbs.elki.utilities.Util;
+import de.lmu.ifi.dbs.elki.utilities.datastructures.arraylike.ArrayLikeUtil;
import de.lmu.ifi.dbs.elki.utilities.documentation.Description;
import de.lmu.ifi.dbs.elki.utilities.documentation.Title;
@@ -80,14 +83,17 @@ public class ParameterizationFunctionLabelParser extends AbstractParser implemen
for(String line; (line = reader.readLine()) != null; lineNumber++) {
if(!line.startsWith(COMMENT) && line.length() > 0) {
List<String> entries = tokenize(line);
- List<Double> attributes = new ArrayList<Double>(entries.size());
- LabelList labellist = new LabelList();
+ TDoubleList attributes = new TDoubleArrayList(entries.size());
+ LabelList labellist = null;
for(String entry : entries) {
try {
- Double attribute = Double.valueOf(entry);
+ double attribute = Double.parseDouble(entry);
attributes.add(attribute);
}
catch(NumberFormatException e) {
+ if(labellist == null) {
+ labellist = new LabelList(1);
+ }
labellist.add(entry);
}
}
@@ -98,8 +104,7 @@ public class ParameterizationFunctionLabelParser extends AbstractParser implemen
else if(dimensionality != attributes.size()) {
throw new IllegalArgumentException("Differing dimensionality in line " + lineNumber + ":" + attributes.size() + " != " + dimensionality);
}
-
- vectors.add(new ParameterizationFunction(Util.convertToDoubles(attributes)));
+ vectors.add(ParameterizationFunction.STATIC.newNumberVector(attributes, ArrayLikeUtil.TDOUBLELISTADAPTER));
labels.add(labellist);
}
}