Ignore:
Timestamp:
Feb 7, 2008, 7:47:34 PM (14 years ago)
Author:
Peter
Message:

Simplifying distance structure

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/yat/classifier/KNN.h

    r1042 r1050  
    2525*/
    2626
     27#include "DataLookup1D.h"
    2728#include "DataLookupWeighted1D.h"
    2829#include "MatrixLookup.h"
     
    3031#include "SupervisedClassifier.h"
    3132#include "Target.h"
    32 #include "yat/statistics/distance.h"
    3333#include "yat/utility/matrix.h"
    3434#include "yat/utility/yat_assert.h"
     
    113113    u_int k_;
    114114
     115    Distance distance_;
    115116    ///
    116117    /// Calculates the distances between a data set and the training
     
    156157        for(size_t j=0; j<test.columns(); j++) {
    157158          classifier::DataLookup1D test(*test_unweighted,j,false);
    158           (*distances)(i,j) =
    159             statistics::distance(classifier::DataLookup1D(data_,
    160                                                           i,false).begin(),
    161                                  classifier::DataLookup1D(data_,
    162                                                           i,false).end(),
    163                                  test.begin(),
    164                                  typename statistics::
    165                                  distance_traits<Distance>::distance());
     159          classifier::DataLookup1D tmp(data_,i,false);
     160          (*distances)(i,j) = distance_(tmp.begin(), tmp.end(), test.begin());
    166161          utility::yat_assert<std::runtime_error>(!std::isnan((*distances)(i,j)));
    167162        }
     
    180175            classifier::DataLookupWeighted1D test(*test_weighted,j,false);
    181176            utility::yat_assert<std::runtime_error>(training.size()==test.size());
    182             (*distances)(i,j) =
    183               statistics::distance(training.begin(),training.end(),
    184                                    test.begin(), typename statistics::distance_traits<Distance>::distance());
     177            (*distances)(i,j) = distance_(training.begin(), training.end(),
     178                                          test.begin());
    185179            utility::yat_assert<std::runtime_error>(!std::isnan((*distances)(i,j)));
    186180          }
Note: See TracChangeset for help on using the changeset viewer.