Exemple #1
0
 public String getMax() {
   double max = Double.MIN_VALUE;
   String maxterm = null;
   for (Object2DoubleMap.Entry<String> entry : object2DoubleEntrySet()) {
     if (max < entry.getDoubleValue()) {
       max = entry.getDoubleValue();
       maxterm = entry.getKey();
     }
   }
   return maxterm;
 }
Exemple #2
0
 public double cossimDebug(TermVectorDouble v) {
   if (this.size() > v.size()) {
     return v.cossimDebug(this);
   }
   double dotproduct = 0;
   for (Object2DoubleMap.Entry<String> entry : object2DoubleEntrySet()) {
     dotproduct += v.getDouble(entry.getKey()) * entry.getDoubleValue();
     log.info(
         "%s %f %f %s",
         entry.getKey(), v.getDouble(entry.getKey()), entry.getDoubleValue(), dotproduct);
   }
   double magnitude = magnitude() * v.magnitude();
   log.info("magnitude %s %s %s", magnitude(), v.magnitude(), dotproduct / magnitude);
   return (magnitude == 0) ? 0 : dotproduct / magnitude;
 }
Exemple #3
0
 public TermVectorDouble normalize() {
   double total = total();
   if (total != 1) {
     for (Object2DoubleMap.Entry<String> entry : object2DoubleEntrySet()) {
       entry.setValue(entry.getDoubleValue() / total);
     }
   }
   magnitude = null;
   total = 1;
   return this;
 }
Exemple #4
0
 public void remove(TermVectorDouble v) {
   for (Object2DoubleMap.Entry<String> entry : v.object2DoubleEntrySet()) {
     add(entry.getKey(), -entry.getDoubleValue());
   }
   magnitude = null;
 }