protected double computeRandomProjection(int rpIndex,int classIndex,Instance instance){
  double sum=0.0;
  for (int i=0; i < instance.numValues(); i++) {
    int index=instance.index(i);
    if (index != classIndex) {
      double value=instance.valueSparse(i);
      if (!Utils.isMissingValue(value)) {
        sum+=m_rmatrix[rpIndex][index] * value;
      }
    }
  }
  return sum;
}

protected double computeRandomProjection ( int rpIndex , int classIndex , Instance instance ) { double sum = 0.0 ; for ( int i = 0 ; i < instance . numValues ( ) ; i ++ ) { int index = instance . index ( i ) ; if ( index != classIndex ) { double value = instance . valueSparse ( i ) ; if ( ! Utils . isMissingValue ( value ) ) { sum += m_rmatrix [ rpIndex ] [ index ] * value ; } } } return sum ; }
computes one random projection for a given instance ( skip missing values )
