code: private DoubleVector changeVector(DoubleVector data, int[] orderVector) {
          DoubleVector result = new DenseVector(indexVectorSize);
          for (int i = 0; i < indexVectorSize; i++)
              result.set(i, data.get(orderVector[i]));
          return result;
      }
docs: Shuffle the given vector based on the ordering information given in
  {@code orderVector}.
  
  @param data The vector to be shuffled.
  @param orderVector The ordering of values to be used.
  
  @return The shuffled version of {@code data}.