Author: srowen
Date: Wed Nov  2 08:38:31 2011
New Revision: 1196494

URL: http://svn.apache.org/viewvc?rev=1196494&view=rev
Log:
MAHOUT-155 Joe's fix for nominal attributes

Modified:
    
mahout/trunk/integration/src/main/java/org/apache/mahout/utils/vectors/arff/ARFFVectorIterable.java
    
mahout/trunk/integration/src/test/java/org/apache/mahout/utils/vectors/arff/ARFFVectorIterableTest.java

Modified: 
mahout/trunk/integration/src/main/java/org/apache/mahout/utils/vectors/arff/ARFFVectorIterable.java
URL: 
http://svn.apache.org/viewvc/mahout/trunk/integration/src/main/java/org/apache/mahout/utils/vectors/arff/ARFFVectorIterable.java?rev=1196494&r1=1196493&r2=1196494&view=diff
==============================================================================
--- 
mahout/trunk/integration/src/main/java/org/apache/mahout/utils/vectors/arff/ARFFVectorIterable.java
 (original)
+++ 
mahout/trunk/integration/src/main/java/org/apache/mahout/utils/vectors/arff/ARFFVectorIterable.java
 Wed Nov  2 08:38:31 2011
@@ -104,7 +104,7 @@ public class ARFFVectorIterable implemen
           int classIdx = lower.indexOf(ARFFType.NOMINAL.getIndicator());
           String[] classes = COMMA_PATTERN.split(line.substring(classIdx + 1, 
line.length() - 1));
           for (int i = 0; i < classes.length; i++) {
-            model.addNominal(label, classes[i].trim(), i);
+            model.addNominal(label, classes[i].trim(), i + 1);
           }
           
         } else if (lower.contains(ARFFType.DATE.getIndicator())) {

Modified: 
mahout/trunk/integration/src/test/java/org/apache/mahout/utils/vectors/arff/ARFFVectorIterableTest.java
URL: 
http://svn.apache.org/viewvc/mahout/trunk/integration/src/test/java/org/apache/mahout/utils/vectors/arff/ARFFVectorIterableTest.java?rev=1196494&r1=1196493&r2=1196494&view=diff
==============================================================================
--- 
mahout/trunk/integration/src/test/java/org/apache/mahout/utils/vectors/arff/ARFFVectorIterableTest.java
 (original)
+++ 
mahout/trunk/integration/src/test/java/org/apache/mahout/utils/vectors/arff/ARFFVectorIterableTest.java
 Wed Nov  2 08:38:31 2011
@@ -18,7 +18,10 @@
 package org.apache.mahout.utils.vectors.arff;
 
 import java.text.DateFormat;
+import java.text.SimpleDateFormat;
+import java.util.Date;
 import java.util.Iterator;
+import java.util.Locale;
 import java.util.Map;
 
 import org.apache.mahout.math.DenseVector;
@@ -123,6 +126,19 @@ public final class ARFFVectorIterableTes
     Map<Integer, DateFormat> integerDateFormatMap = model.getDateMap();
     assertNotNull("date format null", integerDateFormatMap);
     assertEquals(1, integerDateFormatMap.size());
+  }
+
+  @Test
+  public void testDate() throws Exception {
+    MapBackedARFFModel model = new MapBackedARFFModel();
+    ARFFVectorIterable iterable = new ARFFVectorIterable(NON_NUMERIC_ARFF, 
model);
+    Iterator<Vector> iter = iterable.iterator();
+    Vector firstVector = iter.next();
+    assertEquals(firstVector.get(2),1.0,0); 
+    DateFormat format = new SimpleDateFormat("yyyy-MM-dd", Locale.ENGLISH);
+    Date date = format.parse("1973-10-23");
+    long result = date.getTime();
+    assertEquals(result, firstVector.get(4),0);
     
   }
 


Reply via email to