About `np.cov([1])`. Yes, that should be preserved (for the biased estimator). If `fact` ends up smaller or equal 0, it should be set to 0 and return `NaN` (or +/-inf). The other pull request will change that behaviour, so you should only have to check where you need to insert your `fact` calculation to not bypass that accidentally.