reducing memory consumption and some duplicate, redundant calculations in multipletests
incomplete: not all methods work yet with 5300**2 pvalues, but I want to get TravisCI results for the refactoring
REF: try using less memory in multipletests 'holms' see #1394
REF: reduce memory in fdrcorrection (minimal change)
REF: allow is_sorted in fdrcorrection see #1394
REF: add is_sorted option to fdr to avoid duplicate calculations
delete intermediate arrays (all work except Hommel)
After the last commit, all methods except 'hommel' finish without memory error
I attached test script to #1394
I don't know what to do about hommel, but will always be slow since it has a len(pvals) loop.
'hommel' is the most complex method, even if it's just a few lines.
REF: multipletests: add is_sorted, performance: drop reverse indexing
TST: multipletests: add tests for is_sorted
about finished with the last commit
I don't know if I should really still add overwrite_input=True
and I think returnsorted should be dropped. I don't really see a strong use case.
REF/DOC: use take (a bit faster), timing in docstring
There is still a bit of slack left, memory consumption could be reduced a bit further by using out arguments in numpy functions, and more inplace operation.
However, since it reduces readability, I'm waiting until that is really necessary.
I'm going to merge when TravisCI comes back green.