Недавно я написал некоторый код для существенного улучшения метода scipy.stats.binom_test. По сути, функция создавала массив размером с входы, и это вызывало ошибки памяти, когда входы были порядка 100 миллионов. Создание этих массивов было ненужным, и артефакт переноса метода из R. Я изменил эту логику c в следующем PR: https://github.com/ryu577/scipy/pull/1/files.
Чтобы увидеть, как это ненужное создание Массивы вызывают проблемы, запустите следующий код:
from scipy.stats import binom_test
binom_test(100000000,100000001,.5)
Здесь я заменил поиск значения в массиве бинарным поиском. Это делает метод намного более эффективным в использовании памяти и времени. Это делает метод неиспользуемым для входов размером в сотни миллионов и работает в мгновение ока без лишних затрат памяти.
Я протестировал использование, и он выдает тот же результат, что и исходная версия в различные контексты.
Однако этот PR не привлекал никакого внимания. Я даже отправил электронное письмо об этом в список рассылки scipy и не получил ответа.
Я обязуюсь сделать все возможное, чтобы превратить это изменение в scipy, но я потерян в отношении следующих шагов. Есть ли кто-нибудь, кто внес свой вклад в scipy, который может направить меня?