docs: public double estimateVariance(INDArray data, int ndims) {
          INDArray dx = data.sub(mean);
          INDArray v = eigenvectors.transpose().mmul(dx.reshape(dx.columns(), 1));
          INDArray t2 = Transforms.pow(v, 2);
          double fraction = t2.get(NDArrayIndex.interval(0, ndims)).sumNumber().doubleValue();
          double total = t2.sumNumber().doubleValue();
          return fraction / total;
      }