@Override public String[] apply(String[] words){
  if (!isApplicable())   return words;
  for (int i=0; i < _colList.length; i++) {
    int colID=_colList[i];
    try {
      double val=UtilFunctions.parseToDouble(words[colID - 1]);
      int binid=1;
      double tmp=_min[i] + _binWidths[i];
      while (val > tmp && binid < _numBins[i]) {
        tmp+=_binWidths[i];
        binid++;
      }
      words[colID - 1]=Integer.toString(binid);
    }
 catch (    NumberFormatException e) {
      throw new RuntimeException("Encountered \"" + words[colID - 1] + "\" in column ID \""+ colID+ "\", when expecting a numeric value. Consider adding \""+ words[colID - 1]+ "\" to na.strings, along with an appropriate imputation method.");
    }
  }
  return words;
}

@ Override public String [ ] apply ( String [ ] words ) { if ( ! isApplicable ( ) ) return words ; for ( int i = 0 ; i < _colList . length ; i ++ ) { int colID = _colList [ i ] ; try { double val = UtilFunctions . parseToDouble ( words [ colID - 1 ] ) ; int binid = 1 ; double tmp = _min [ i ] + _binWidths [ i ] ; while ( val > tmp && binid < _numBins [ i ] ) { tmp += _binWidths [ i ] ; binid ++ ; } words [ colID - 1 ] = Integer . toString ( binid ) ; } catch ( NumberFormatException e ) { throw new RuntimeException ( "Encountered \"" + words [ colID - 1 ] + "\" in column ID \"" + colID + "\", when expecting a numeric value. Consider adding \"" + words [ colID - 1 ] + "\" to na.strings, along with an appropriate imputation method." ) ; } } return words ; }
method to apply transformations .
