SciPy 0.18.0 Примечания к выпуску#

SciPy 0.18.0 — результат 6 месяцев напряженной работы. Он содержит множество новых функций, многочисленные исправления ошибок, улучшенное покрытие тестами и лучшую документацию. В этом выпуске было несколько устареваний и изменений API, которые задокументированы ниже. Всем пользователям рекомендуется обновиться до этого выпуска, так как в нем большое количество исправлений ошибок и оптимизаций. Кроме того, наше внимание в разработке теперь переключится на выпуски с исправлениями ошибок в ветке 0.19.x и на добавление новых функций в основной ветке.

Для этого выпуска требуется Python 2.7 или 3.4-3.5 и NumPy 1.7.1 или выше.

Основные особенности этого выпуска включают:

  • Новый решатель ОДУ для краевых задач, scipy.optimize.solve_bvp.

  • Новый класс, CubicSpline, для кубической сплайн-интерполяции данных.

  • N-мерные тензорные произведения полиномов, scipy.interpolate.NdPPoly.

  • Сферические диаграммы Вороного, scipy.spatial.SphericalVoronoi.

  • Поддержка дискретно-временных линейных систем, scipy.signal.dlti.

Новые возможности#

scipy.integrate улучшения#

Решатель двухточечных краевых задач для систем ОДУ был реализован в scipy.integrate.solve_bvp. Решатель допускает несвязанные граничные условия, неизвестные параметры и некоторые сингулярные члены. Он находит C1-непрерывное решение с использованием алгоритма коллокации четвертого порядка.

scipy.interpolate улучшения#

Кубическая сплайн-интерполяция теперь доступна через scipy.interpolate.CubicSpline. Этот класс представляет кусочно-кубический полином, проходящий через заданные точки и C2-непрерывный. Он представлен в стандартном полиномиальном базисе на каждом сегменте.

Доступно представление n-мерных тензорных произведений кусочно-полиномиальных функций как scipy.interpolate.NdPPoly класс.

Классы кусочно-полиномиальных функций одной переменной, PPoly и Bpoly, теперь может быть вычислен на периодических областях. Используйте extrapolate="periodic" ключевой аргумент для этого.

scipy.fftpack улучшения#

scipy.fftpack.next_fast_len функция вычисляет следующее «регулярное» число для FFTPACK. Дополнение входных данных до этой длины может дать значительное повышение производительности для scipy.fftpack.fft.

scipy.signal улучшения#

Передискретизация с использованием полифазной фильтрации реализована в функции scipy.signal.resample_poly. Этот метод повышает частоту дискретизации сигнала, применяет КИХ-фильтр нижних частот с нулевой фазой и понижает частоту дискретизации с использованием scipy.signal.upfirdn (что также новое в 0.18.0). Этот метод может быть быстрее, чем фильтрация на основе FFT, предоставляемая scipy.signal.resample для некоторых сигналов.

scipy.signal.firls, который строит КИХ-фильтры с использованием минимизации ошибки методом наименьших квадратов, был добавлен.

scipy.signal.sosfiltfilt, который выполняет фильтрацию вперед-назад, как scipy.signal.filtfilt но для секций второго порядка, был добавлен.

Дискретные линейные системы#

scipy.signal.dlti предоставляет реализацию дискретно-временных линейных систем. Соответственно, StateSpace, TransferFunction и ZerosPolesGain классы научились новому ключевому слову, dt, который можно использовать для создания дискретно-временных экземпляров соответствующего представления системы.

scipy.sparse улучшения#

Функции sum, max, mean, min, транспонирование, и reshape в scipy.sparse были дополнены дополнительными аргументами и функциональностью для улучшения совместимости с аналогично определенными функциями в numpy.

Разреженные матрицы теперь имеют Возвращает указатель данных, приведенный к определенному объекту c-типов. Например, вызов метод, который подсчитывает количество ненулевых элементов в матрице. В отличие от getnnz() и nnz свойство, которое возвращает количество сохранённых записей (длину атрибута data), этот метод подсчитывает фактическое количество ненулевых записей в data.

scipy.optimize улучшения#

Реализация минимизации по методу Нелдера-Мида, scipy.minimize(…, method="Nelder-Mead"), получил новый ключевой аргумент, initial_simplex, который может использоваться для указания начального симплекса для процесса оптимизации.

Улучшен выбор начального размера шага в минимизаторах CG и BFGS. Мы ожидаем, что это изменение улучшит численную устойчивость оптимизации в некоторых случаях. Подробности см. в pull request gh-5536.

Улучшена обработка бесконечных границ в оптимизации SLSQP. Ожидается, что это изменение улучшит численную стабильность оптимизации в некоторых случаях. Подробности см. в pull request gh-6024.

Большой набор тестов глобальной оптимизации был добавлен в scipy/benchmarks/go_benchmark_functions. Подробности см. в pull request gh-4191.

Минимизация Нелдера-Мида и Пауэлла теперь будет устанавливать значения по умолчанию для максимального количества итераций или вычислений функции только если ни один лимит не задан вызывающим кодом. В некоторых случаях с медленно сходящейся функцией и только одним установленным лимитом, минимизация может продолжаться дольше, чем в предыдущих версиях, и поэтому с большей вероятностью достигнет сходимости. См. issue gh-5966.

scipy.stats улучшения#

Трапециевидное распределение реализовано как scipy.stats.trapz. Скошенное нормальное распределение было реализовано как scipy.stats.skewnorm. Распределение Берра типа XII было реализовано как scipy.stats.burr12. Трёх- и четырёхпараметрические распределения каппа были реализованы как scipy.stats.kappa3 и scipy.stats.kappa4, соответственно.

Новый scipy.stats.iqr функция вычисляет межквартильный размах распределения.

Случайные матрицы#

scipy.stats.special_ortho_group и scipy.stats.ortho_group предоставляют генераторы случайных матриц в группах SO(N) и O(N) соответственно. Они генерируют матрицы в распределении Хаара, единственном равномерном распределении на этих групповых многообразиях.

scipy.stats.random_correlation предоставляет генератор для случайных корреляционных матриц с заданными собственными значениями.

scipy.linalg улучшения#

scipy.linalg.svd получил новый аргумент ключевого слова, lapack_driver. Доступные драйверы: gesdd (по умолчанию) и gesvd.

scipy.linalg.lapack.ilaver возвращает версию библиотеки LAPACK, с которой связан SciPy.

scipy.spatial улучшения#

Булевы расстояния, scipy.spatial.pdistбыли ускорены. Улучшения варьируются в зависимости от функции и размера входных данных. Во многих случаях можно ожидать ускорения в 2–10 раз.

Новый класс scipy.spatial.SphericalVoronoi строит диаграммы Вороного на поверхности сферы. Подробности см. в pull request gh-5232.

scipy.cluster улучшения#

Новый алгоритм кластеризации, алгоритм цепочки ближайших соседей, был реализован для scipy.cluster.hierarchy.linkage. В результате можно ожидать значительного алгоритмического улучшения (\(O(N^2)\) вместо \(O(N^3)\)) для нескольких методов связывания.

scipy.special улучшения#

Новая функция scipy.special.loggamma вычисляет главную ветвь логарифма гамма-функции. Для вещественного ввода, loggamma совместим с scipy.special.gammaln. Для комплексного ввода он имеет более согласованное поведение в комплексной плоскости и должен быть предпочтительнее gammaln.

Векторизованные формы сферических функций Бесселя были реализованы как scipy.special.spherical_jn, scipy.special.spherical_kn, scipy.special.spherical_in и scipy.special.spherical_yn. Они рекомендуются для использования вместо sph_* функции, которые теперь устарели.

Несколько специальных функций были расширены на комплексную область и/или получили улучшения в области определения/стабильности. Это включает spence, digamma, log1p и несколько других.

Устаревшие функции#

Перекрёстные свойства lti системы устарели. Следующие свойства/сеттеры вызовут DeprecationWarning:

Имя - (доступ/установка вызывает предупреждение) - (установка вызывает предупреждение) * StateSpace - (число, den, усиление) - (zeros, полюса) * TransferFunction (A, B, C, D, усиление) - (zeros, полюса) * ZerosPolesGain (A, B, C, D, число, den) - ()

Сферические функции Бесселя, sph_in, sph_jn, sph_kn, sph_yn, sph_jnyn и sph_inkn устарели в пользу scipy.special.spherical_jn и spherical_kn, spherical_yn, spherical_in.

Следующие функции в scipy.constants устарели: C2K, K2C, C2F, F2C, F2K и K2F. Они заменены новой функцией scipy.constants.convert_temperature который может выполнять все эти преобразования плюс в/из температурной шкалы Ранкина.

Обратно несовместимые изменения#

scipy.optimize#

Критерий сходимости для optimize.bisect, optimize.brentq, optimize.brenth, и optimize.ridder теперь работает так же, как numpy.allclose.

scipy.ndimage#

Смещение в ndimage.interpolation.affine_transform теперь последовательно добавляется после применения матрицы, независимо от того, задана ли матрица с использованием одномерного или двумерного массива.

scipy.stats#

stats.ks_2samp раньше возвращал бессмысленные значения, если входные данные не были вещественными или содержали NaN. Теперь для таких входных данных возникает исключение.

Некоторые устаревшие методы scipy.stats распределения были удалены: est_loc_scale, vecfunc, veccdf и vec_generic_moment.

Устаревшие функции nanmean, nanstd и nanmedian были удалены из scipy.stats. Эти функции были объявлены устаревшими в scipy 0.15.0 в пользу их numpy эквиваленты.

Ошибка в rvs() метод распределений в scipy.stats исправлено. Когда аргументы для rvs() были даны, которые были сформированы для широковещания, во многих случаях возвращённые случайные выборки не были случайными. Простой пример проблемы: stats.norm.rvs(loc=np.zeros(10))Из-за ошибки этот вызов возвращал 10 одинаковых значений. Ошибка затрагивала только код, который полагался на broadcasting параметров shape, location и scale.

The rvs() метод также принимал некоторые аргументы, которые он не должен был принимать. Существует потенциальная проблема обратной совместимости в случаях, когда rvs() принимала аргументы, которые фактически несовместимы с широковещанием. Примером является

stats.gamma.rvs([2, 5, 10, 15], size=(2,2))

Форма первого аргумента не совместима с запрошенным размером, но функция все равно вернула массив с формой (2, 2). В scipy 0.18 этот вызов генерирует ValueError.

scipy.io#

scipy.io.netcdf маскирование теперь отдает приоритет _FillValue атрибут над missing_value атрибут, если заданы оба. Также данные считаются пропущенными только если они точно соответствуют одному из этих атрибутов: значения, которые отличаются из-за округления от _FillValue или missing_value больше не считаются пропущенными значениями.

scipy.interpolate#

scipy.interpolate.PiecewisePolynomial класс был удалён. Он был устаревшим в scipy 0.14.0, и scipy.interpolate.BPoly.from_derivatives служит как прямая замена.

Прочие изменения#

Scipy теперь использует setuptools для своих сборок вместо простого distutils. Это исправляет использование install_requires='scipy' в setup.py файлах проектов, зависящих от Scipy (подробности см. в issue Numpy gh-6551). Это потенциально влияет на поведение методов сборки/установки самого Scipy. Пожалуйста, сообщайте о любом неожиданном поведении в трекере issue Scipy.

PR #6240 изменяет интерпретацию maxfun опция в L-BFGS-B основанные на подпрограммах в scipy.optimize модуль. An L-BFGS-B поиск состоит из нескольких итераций, причём каждая итерация состоит из одного или нескольких вычислений функции. В то время как старая стратегия поиска завершалась сразу после достижения maxfun вычислениям функции, новая стратегия позволяет завершить текущую итерацию несмотря на достижение maxfun.

Включенная копия Qhull в scipy.spatial подпакет был обновлен до версии 2015.2.

Встроенная копия ARPACK в scipy.sparse.linalg подпакет был обновлён до arpack-ng 3.3.0.

Встроенная копия SuperLU в scipy.sparse подпакет был обновлен до версии 5.1.1.

Авторы#

  • @endolith

  • @yanxun827 +

  • @kleskjr +

  • @MYheavyGo +

  • @solarjoe +

  • Gregory Allen +

  • Gilles Aouizerate +

  • Tom Augspurger +

  • Henrik Bengtsson +

  • Felix Berkenkamp

  • Пер Бродткорб

  • Lars Buitinck

  • Дэниел Бантинг +

  • Evgeni Burovski

  • CJ Кэри

  • Тим Сера

  • Grey Christoforo +

  • Роберт Цимрман

  • Филип ДеБур +

  • Yves Delley +

  • Dávid Bodnár +

  • Ион Эльбердин +

  • Gabriele Farina +

  • Юй Фэн

  • Andrew Fowlie +

  • Joseph Fox-Rabinovitz

  • Simon Gibbons +

  • Neil Girdhar +

  • Kolja Glogowski +

  • Кристоф Голке

  • Ralf Gommers

  • Todd Goodall +

  • Johnnie Gray +

  • Алекс Гриффинг

  • Оливье Гризель

  • Thomas Haslwanter +

  • Michael Hirsch +

  • Derek Homeier

  • Голназ Ираннеджад +

  • Марек Якоб +

  • InSuk Joung +

  • Tetsuo Koyama +

  • Евгений Крохалев +

  • Eric Larson

  • Денис Лаксальд

  • Antony Lee

  • #15399

  • Генри Лин +

  • Nelson Liu +

  • Loïc Estève

  • Lei Ma +

  • Освальдо Мартин +

  • Stefano Martina +

  • Nikolay Mayorov

  • Маттье Мело +

  • Sturla Molden

  • Eric Moore

  • Alistair Muldal +

  • Maniteja Nandana

  • Tavi Nathanson +

  • Andrew Nelson

  • Joel Nothman

  • Бехзад Нури

  • Николай Новацзык +

  • Juan Nunez-Iglesias +

  • Ted Pudlik

  • Эрик Кинтеро

  • register_dataframe_accessor

  • Йонас Раубер +

  • Тайлер Редди +

  • Juha Remes

  • Garrett Reynolds +

  • Ариэль Рокем +

  • Fabian Rost +

  • Bill Sacks +

  • Jona Sassenhagen +

  • Kari Schoonbee +

  • Marcello Seri +

  • Сурав Сингх +

  • Martin Spacek +

  • Søren Fuglede Jørgensen +

  • Bhavika Tekwani +

  • Martin Thoma +

  • Сэм Тайгер +

  • Meet Udeshi +

  • Utkarsh Upadhyay

  • Bram Vandekerckhove +

  • Sebastián Vanrell +

  • Ze Vinicius +

  • Pauli Virtanen

  • Stefan van der Walt

  • Warren Weckesser

  • Jakub Wilk +

  • Josh Wilson

  • Филлип Дж. Вольфрам +

  • Nathan Woods

  • Haochen Wu

  • G Young +

Всего 99 человек внесли вклад в этот релиз. Люди со знаком «+» рядом с именами внесли патч впервые. Этот список имён генерируется автоматически и может быть неполным.

Проблемы, закрытые для версии 0.18.0#

  • #1484: SVD с использованием *GESVD драйверы LAPACK (Trac #957)

  • #1547: Несогласованное использование offset в ndimage.interpolation.affine_transform()…

  • #1609: special.hyp0f1 возвращает nan (Trac #1082)

  • #1656: Улучшение fmin_slsqp (Trac #1129)

  • #2069: stats: вещание в rvs (Trac #1544)

  • #2165: sph_jn возвращает ложные результаты для некоторых порядков/значений (Trac #1640)

  • #2255: Неверный порядок трансляции и вращения в affine_transform…

  • #2332: Аргументы и возвращаемые значения hyp0f1 не соответствуют numpy (Trac #1813)

  • #2534: Метод .sum() для разреженных матриц с типом uint8 не работает как…

  • #3113: Реализация ufuncs для CSPHJY, SPHJ, SPHY, CSPHIK, SPHI, SPHIK…

  • #3568: SciPy 0.13.3 - CentOS5 - Ошибки в test_arpack

  • #3581: optimize: шаг в fmin_bfgs "плохой"

  • #4476: Ошибка с нестандартным порядком байтов в scipy.sparse

  • #4484: ftol в optimize.fmin не работает

  • #4510: sparsetools.cxx call_thunk может вызывать segfault из-за выхода за границы...

  • #5051: ftol и xtol для _minimize_neldermead являются абсолютными вместо…

  • #5097: предложение: сферические диаграммы Вороного

  • #5123: Вызов scipy.sparse.coo_matrix завершается ошибкой при передаче типизированных Cython…

  • #5220: scipy.cluster.hierarchy.{ward,median,centroid} не работает…

  • #5379: Добавить шаг сборки в конце .travis.yml, который загружает рабочие…

  • #5440: scipy.optimize.basinhopping: accept_test возвращает numpy.bool_

  • #5452: Ошибка в scipy.integrate.nquad при использовании переменных пределов интегрирования…

  • #5520: Нельзя правильно наследовать csr_matrix

  • #5533: реализация тау Кендалла использует сортировку слиянием Python

  • #5553: stats.tiecorrect переполняется

  • #5589: Добавить распределение Бёрра типа XII в stats.

  • #5612: sparse.linalg разложения медленны для малых k из-за значения по умолчанию…

  • #5626: io.netcdf маскирование должно использовать masked_equal вместо masked_value

  • #5637: Простая кубическая сплайн-интерполяция?

  • #5683: BUG: Akima1DInterpolator может возвращать значения nan при многомерных…

  • #5686: scipy.stats.ttest_ind_from_stats не принимает массивы

  • #5702: scipy.ndimage.interpolation.affine_transform не имеет документации…

  • #5718: Неправильное вычисление взвешенного расстояния Минковского в cdist

  • #5745: перейти на setuptools для следующего релиза

  • #5752: DOC: solve_discrete_lyapunov уравнение помещает транспонирование в неправильное…

  • #5760: signal.ss2tf не обрабатывает модели пространства состояний нулевого порядка

  • #5764: Гипергеометрическая функция hyp0f1 ведёт себя некорректно для комплексных…

  • #5814: stats NaN Policy Error message inconsistent with code

  • #5833: строка документации stats.binom_test() требует обновления

  • #5853: Ошибка в scipy.linalg.expm для комплексной матрицы с формой (1,1)

  • #5856: Указать начальный симплекс для метода Нелдера-Мида

  • #5865: scipy.linalg.expm не работает для некоторых матриц numpy

  • #5915: optimize.basinhopping - переменная использована до присваивания.

  • #5916: LSQUnivariateSpline не удалось выполнить подгонку с узлами, сгенерированными из…

  • #5927: сравнение unicode и string в scipy.stats.binned_statistic_dd

  • #5936: более быстрая реализация ks_2samp

  • #5948: csc matrix .mean возвращает матрицу с одним элементом вместо скаляра

  • #5959: BUG: ошибка теста optimize для root при использовании lgmres

  • #5972: Ошибки тестов для тестов суммы разреженных матриц на 32-битном Python

  • #5976: Неожиданное исключение в scipy.sparse.bmat при использовании матрицы 0 x 0

  • #6008: scipy.special.kl_div недоступна в версии 0.14.1

  • #6011: Энтропия фон Мизеса нарушена

  • #6016: python аварийно завершает работу для linalg.interpolative.svd с определенными большими...

  • #6017: Критерий знаковых рангов Уилкоксона с zero_method=”pratt” или “zsplit”…

  • #6028: stats.distributions не имеет трапециевидного распределения

  • #6035: Неправильная ссылка в f_oneway

  • #6056: BUG: signal.decimate должен принимать только дискретные LTI-объекты

  • #6093: Ошибка точности на Linux 32-bit с openblas

  • #6101: Ошибка теста барицентрических преобразований на Python3, 32-битный Linux

  • #6105: строка документации scipy.misc.face неверна

  • #6113: scipy.linalg.logm не работает для тривиальной матрицы

  • #6128: Ошибка в методе dot разреженного массива COO при использовании с numpy…

  • #6132: Сбои с последней версией MKL

  • #6136: Сбои на master с MKL

  • #6162: fmin_l_bfgs_b возвращает противоречивые результаты (fmin ≠ f(xmin)) и…

  • #6165: optimize.minimize бесконечный цикл с Newton-CG

  • #6167: некорректная подгонка распределения для данных, содержащих граничные значения.

  • #6194: lstsq() и другие обнаруживают numpy.complex256 как вещественный

  • #6216: ENH: улучшить точность обратного преобразования ppf cdf для распределения Брэдфорда

  • #6217: ОШИБКА: weibull_min.logpdf возвращает nan для c=1 и x=0

  • #6218: Существует ли метод ограничения расстояний поиска кратчайшего пути?

  • #6222: PchipInterpolator больше не обрабатывает массив из 2 элементов

  • #6226: ENH: улучшить точность для logistic.ppf и logistic.isf

  • #6227: ENH: улучшение точности для rayleigh.logpdf и rayleigh.logsf…

  • #6228: ENH: улучшена точность цикла ppf cdf для gumbel_l

  • #6235: BUG: alpha.pdf и alpha.logpdf возвращают nan для x=0

  • #6245: ENH: улучшить точность для ppf-cdf и sf-isf преобразований для invgamma

  • #6263: BUG: stats: Несоответствие в документации multivariate_normal

  • #6292: Ошибки несравнимых типов Python 3 в test_sparsetools.TestInt32Overflow

  • #6316: TestCloughTocher2DInterpolator.test_dense вызывает краш python3.5.2rc1_64bit…

  • #6318: Scipy interp1d 'nearest' не работает для больших значений на оси x

Pull requests для версии 0.18.0#

  • #3226: DOC: Изменить nb и na к обычным m и n

  • #3867: разрешить cKDTree.query принимать список входных данных в k.

  • #4191: ENH: Бенчмаркинг глобальных оптимизаторов

  • #4356: ENH: добавить PPoly.solve(y) для решения p(x) == y

  • #4370: DOC отделить булевы функции расстояния для ясности

  • #4678: BUG: sparse: обеспечить, чтобы dtype индекса был достаточно большим для передачи всех параметров…

  • #4881: scipy.signal: Добавить класс dlti для линейных дискретных систем….

  • #4901: MAINT: добавить бенчмарк и улучшить документацию для signal.lfilter

  • #5043: ENH: sparse: добавить метод count_nonzero

  • #5136: Атрибут kurtosistest() приписывается Anscombe & Glynn (1983)

  • #5186: ENH: Портируем upfirdn

  • #5232: ENH: добавление алгоритма сферической диаграммы Вороного в scipy.spatial

  • #5279: ENH: Фильтры Бесселя с разными нормировками, высокого порядка

  • #5384: BUG: Закрывает #5027 функция расстояния всегда преобразует bool в double

  • #5392: ENH: добавление параметра zero_phase в signal.decimate

  • #5394: MAINT: sparse: очистка и исправления некорональных тестов

  • #5424: DOC: добавить руководство для разработчиков Scipy

  • #5442: STY: исправления в соответствии с PEP8

  • #5472: Онлайн QR в LGMRES

  • #5526: BUG: stats: Исправить вещание в методе rvs() распределений.

  • #5530: MAINT: sparse: установить формат attr явно

  • #5536: optimize: исправление начальных размеров шага для cg/bfgs

  • #5548: PERF: улучшает производительность в stats.kendalltau

  • #5549: ENH: Nearest-neighbor chain algorithm for hierarchical clustering

  • #5554: MAINT/BUG: исправляет ошибку переполнения в stats.tiecorrect

  • #5557: BUG: модифицировать optimize.bisect для достижения желаемой точности

  • #5581: DOC: Учебник по least_squares

  • #5606: ENH: differential_evolution - перемещение основного цикла метода solve...

  • #5609: [MRG] тестирование против dev-версии numpy

  • #5611: используйте setuptools для дистрибутивов bdist_egg

  • #5615: MAINT: linalg: уточнить _decomp_update + special: удалить неиспользуемые…

  • #5622: Добавить генератор матрицы вращения SO(N)

  • #5623: ENH: special: Добавить векторизованные сферические функции Бесселя.

  • #5627: Ответ на issue #5160, реализует скошенное нормальное распределение…

  • #5628: ДОК: Выровнять описание и операцию

  • #5632: DOC: special: Расширенная документация для функций Эйри, эллиптических, Бесселя.

  • #5633: MAINT: linalg: непроверенный malloc в _decomp_update

  • #5634: MAINT: optimize: ужесточить _group_columns

  • #5640: Исправления для маскирования io.netcdf

  • #5645: MAINT: обработка векторов размера 0 в запросах диапазона cKDTree

  • #5649: MAINT: обновить текст лицензии

  • #5650: DOC: Уточнить порядок экспоненты в ltisys.py

  • #5651: DOC: Уточнить документацию для scipy.special.gammaln

  • #5652: DOC: Исправлена документация scipy.special.betaln

  • #5653: [MRG] ENH: Интерполятор CubicSpline

  • #5654: ENH: распределение Burr12 в модуль stats

  • #5659: DOC: Определение BEFORE/AFTER в runtests.py -h для bench-compare

  • #5660: MAINT: удаление функций, объявленных устаревшими до версии 0.16.0

  • #5662: ENH: оптимизация круговой статистики

  • #5663: MAINT: удалить использование np.testing.rand

  • #5665: MAINT: spatial: удаление реализации расстояния matching

  • #5667: Изменить некоторые HTTP-ссылки на HTTPS

  • #5669: DOC: zpk2sos не может работать с аналоговыми, array_like и т.д.

  • #5670: Обновить conf.py

  • #5672: MAINT: переместить пример распределения в подкласс rv_discrete

  • #5678: MAINT: stats: удалить метод est_loc_scale

  • #5679: MAINT: унификация общих вычислений для дискретных распределений

  • #5680: MAINT: прекратить затенение встроенных функций в stats.distributions

  • #5681: перенос ENH: Повторно включить широковещание fill_value

  • #5684: BUG: Исправить Akima1DInterpolator, возвращающий nan

  • #5690: BUG: исправление stats.ttest_ind_from_stats для обработки массивов.

  • #5691: BUG: исправлен генератор в io._loadarff для соответствия PEP 0479

  • #5693: ENH: использование math.factorial для точных факториалов

  • #5695: DOC: dx может быть float, а не только integer

  • #5699: MAINT: io: микро-оптимизация кода чтения Matlab для размера

  • #5701: Реализация OptimizeResult.__dir__

  • #5703: ENH: stats: сделать печать R² опциональной в probplot

  • #5704: MAINT: опечатка ouf->out

  • #5705: BUG: исправить опечатку в query_pairs

  • #5707: DOC: Добавить некоторые пояснения для ftol xtol в scipy.optimize.fmin

  • #5708: DOC: optimize: PEP8 минимизация строки документации

  • #5709: MAINT: оптимизация кода Cython для скорости и размера

  • #5713: [DOC] Исправление неработающей ссылки на справочник

  • #5717: DOC: curve_fit вызывает RuntimeError при неудаче.

  • #5724: перенос вперёд gh-5720

  • #5728: STY: удалить пустую строку

  • #5729: ENH: spatial: ускорение булевых расстояний

  • #5732: MAINT: изменения в ключевых словах по умолчанию в differential_evolution нарушают…

  • #5733: TST: differential_evolution - тесты инициализации популяции

  • #5736: Поддержка комплексных чисел в log1p, expm1 и xlog1py

  • #5741: MAINT: sparse: очистка функций извлечения

  • #5742: DOC: signal: Объяснение fftbins в get_window

  • #5748: ENH: Добавлен генератор случайных матриц O(N)

  • #5749: ENH: Добавлена полифазная передискретизация

  • #5756: RFC: Повышение минимальной версии numpy, отказ от старых версий Python

  • #5761: DOC: Некоторые улучшения в документации метода наименьших квадратов

  • #5762: MAINT: spatial: рефакторинг расстояний

  • #5768: DOC: Исправление строки документации io.loadmat для параметра mdict

  • #5770: BUG: Принятие любого типа данных, который может обработать np.dtype, для dtype в sparse.random

  • #5772: Обновлена строка документации sparse.csgraph.laplacian

  • #5777: BUG: исправить special.hyp0f1 для корректной работы со сложными входными данными.

  • #5780: DOC: Обновить URL ошибки установки PIL

  • #5781: DOC: Исправление документации по solve_discrete_lyapunov

  • #5782: DOC: cKDTree и KDTree теперь ссылаются друг на друга

  • #5783: DOC: Уточнить поведение завершения в scipy.optimize.brute

  • #5784: MAINT: Изменение допусков по умолчанию для least_squares на 1e-8

  • #5787: BUG: Разрешить обработку моделей пространства состояний нулевого порядка в signal.ss2tf

  • #5788(8)

  • #5789: ENH: sparse: ускорение среза матрицы LIL (было #3338)

  • #5791: DOC: README: удаление coveralls.io

  • #5792: MAINT: удаление использования устаревшего np.random.random_integers

  • #5794: исправление affine_transform (исправляет #1547 и #5702)

  • #5795: DOC: Удален метод uniform из документации kmeans2

  • #5797: DOC: Уточнение вычисления взвешенного расстояния Минковского

  • #5798: BUG: Обеспечение возврата ndarray функцией _asfarray в scipy

  • #5799: TST: патч тестирования Mpmath

  • #5801: разрешить чтение определенных файлов .sav IDL 8.0

  • #5803: DOC: исправление имени модуля в сообщении об ошибке

  • #5804: DOC: special: Расширенная документация для специальных функций.

  • #5805: DOC: Исправлен порядок возвращаемых значений в _spectral_helper

  • #5806: ENH: sparse: векторизованный coo_matrix.diagonal

  • #5808: ENH: Добавлена функция iqr для вычисления метрики IQR в scipy/stats/stats.py

  • #5810: MAINT/BENCH: sparse: Очистка и добавления в бенчмарки

  • #5811: DOC: sparse.linalg: shape, а не size

  • #5813: Обновить минимальные значения функций разреженного ARPACK ncv значение

  • #5815: BUG: Сообщение об ошибке содержало неверные значения

  • #5816: удалить неиспользуемый код из тестов stats

  • #5820: “in”->”a” в строке документации order_filter

  • #5821: DOC: README: INSTALL.txt был переименован в 2014

  • #5825: DOC: опечатка в строке документации least_squares

  • #5826: MAINT: sparse: увеличение покрытия тестами

  • #5827: NdPPoly rebase

  • #5828: Улучшить численную устойчивость hyp0f1 для больших порядков

  • #5829: ENH: sparse: Добавить параметр copy во все методы .toXXX() в sparse…

  • #5830: DOC: переработать INSTALL.rst.txt

  • #5831: Добавляет опции построения в voronoi_plot_2d

  • #5834: Обновление документации stats.binom_test()

  • #5836: ENH, TST: Разрешение SIMO tf для tf2ss

  • #5837: DOC: Примеры изображений

  • #5838: ENH: sparse: добавить eliminate_zeros() в coo_matrix

  • #5839: BUG: Исправлено имя NumpyVersion.__repr__

  • #5845: MAINT: Исправлены опечатки в документации

  • #5847: Исправление ошибок в sparsetools

  • #5848: BUG: sparse.linalg: добавить блокировки для обеспечения потокобезопасности ARPACK

  • #5849: ENH: sparse.linalg: обновление до superlu 5.1.1

  • #5851: ENH: предоставить доступ к ilaver из lapack в python для проверки версии lapack...

  • #5852: MAINT: runtests.py: обеспечить прерывание сборки по Ctrl-C

  • #5854: DOC: Незначительное обновление документации

  • #5855: Pr 5640

  • #5859: ENH: Добавить генератор случайных корреляционных матриц

  • #5862: BUG: разрешить expm для комплексной матрицы с формой (1, 1)

  • #5863: FIX: Исправлен тест

  • #5864: DOC: добавить небольшую заметку о функции выживания нормального распределения (Q-функция)

  • #5867: Исправление для #5865

  • #5869: расширить функцию распределения нормального распределения на комплексную область

  • #5872: DOC: Обратите внимание, что morlet и cwt не работают вместе

  • #5875: DOC: описание класса interp2d

  • #5876: MAINT: spatial: удалить случайный оператор print

  • #5878: MAINT: Исправлены шумные UserWarnings в тестах ndimage. Исправляет #5877

  • #5879: MAINT: sparse.linalg/superlu: add explicit casts to resolve compiler…

  • #5880: MAINT: signal: импортировать gcd из math, а не fractions, когда на…

  • #5887: Начальный симплекс Нелдера-Мида

  • #5894: BUG: _CustomLinearOperator не может быть распакован в python3.5

  • #5895: DOC: special: немного улучшить строку документации multigammaln

  • #5900: Удалить дублирующее присваивание.

  • #5901: Обновление встроенного ARPACK

  • #5904: ENH: Сделать convolve и correlate не зависящими от порядка

  • #5905: ENH: sparse.linalg: дополнительные улучшения LGMRES

  • #5906: Улучшения и очистка в scipy.integrate (попытка #2)

  • #5907: УЛУЧШ: Изменение разреженного sum и mean приведение типа dtype для соответствия…

  • #5909: изменения для симметрии свёртки

  • #5913: MAINT: basinhopping удалить тест экземпляра закрывает #5440

  • #5919: MAINT: неинициализированная переменная, если basinhopping niter=0. закрывает #5915

  • #5920: BLD: Исправлена ошибка отсутствия lsame.c для MKL

  • #5921: DOC: interpolate: добавить пример, показывающий, как обойти проблему…

  • #5926: MAINT: spatial: обновление до Qhull 2015.2

  • #5928: MAINT: sparse: оптимизировать DIA sum/diagonal, csgraph.laplacian

  • #5929: Обновить информацию/URL для обсуждения с maintainers Octave

  • #5930: TST: special: подавление DeprecationWarnings от sph_yn

  • #5931: ENH: реализовать главную ветвь логарифма гамма-функции.

  • #5934: Опечатка: “mush” => “must”

  • #5935: BUG: сравнение строк stats._binned_statistic закрывает #5927

  • #5938: Cythonize stats.ks_2samp для увеличения скорости примерно на 33%.

  • #5939: DOC: исправить строку документации сходимости optimize.fmin

  • #5941: Исправление мелкой опечатки в строке документации squareform

  • #5942: Обновить описание stderr в linregress.

  • #5943: ENH: Улучшить численную точность lognorm

  • #5944: Объединить vonmises в stats pyx

  • #5945: MAINT: interpolate: Изменение объявления для избежания предупреждения cython…

  • #5946: MAINT: sparse: очистка методов преобразования формата

  • #5949: BUG: исправить sparse .mean для возврата скаляра вместо матрицы

  • #5955MAINT: Замена вызовов hanning с hann

  • #5956: ДОКУМЕНТАЦИЯ: Отсутствующие точки мешают парсингу

  • #5958: MAINT: добавление теста для lognorm.sf при исчезновении порядка

  • #5961: MAINT _centered(): переименовать size в shape

  • #5962: ENH: constants: Добавить функцию преобразования температуры с несколькими шкалами

  • #5965: ENH: special: более быстрый способ вычисления comb() для exact=True

  • #5975и функции модели

  • #5977: MAINT/BUG: sparse: удалить излишние проверки bmat

  • #5978: minimize_neldermead() останавливается по запросу пользователя maxiter или maxfev

  • #5983: ENH: сделать sparse sum приведение типов данных как в NumPy sum для 32-битных…

  • #5985: BUG, API: Добавить jac параметр для curve_fit

  • #5989: ENH: Добавление метода наименьших квадратов firls

  • #5990: BUG: read пытается обрабатывать 20-битные WAV файлы, но не должен

  • #5991: DOC: Очистка документации чтения/записи wav и добавление таблиц для общих типов

  • #5994: ENH: Добавление метода gesvd для svd

  • #5996: MAINT: Очистка Wave

  • #5997: ТЕСТ: Разбить тесты upfirdn и сравнить с lfilter

  • #6001: Документация по проектированию фильтров

  • #6002: COMPAT: Expand compatibility fromnumeric.py

  • #6007: ENH: Пропуск преобразования TF в TF в freqresp

  • #6009: DOC: исправление неверной версии добавления для entr, rel_entr, kl_div

  • #6013: Исправлен расчет энтропии распределения фон Мизеса.

  • #6014: MAINT: заставить gamma, rgamma использовать loggamma для комплексных аргументов

  • #6020: WIP: ENH: add exact=True factorial for vectors

  • #6022: Добавлен 'lanczos' в список функций интерполяции изображений.

  • #6024: BUG: optimize: не использовать фиктивные ограничения в SLSQP, когда нет…

  • #6025: ENH: Решатель краевой задачи для систем ОДУ

  • #6029: MAINT: Будущие импорты для optimize._lsq

  • #6030: ENH: stats.trap - добавление трапециевидного распределения закрывает #6028

  • #6031: MAINT: Некоторые улучшения в optimize._numdiff

  • #6032: MAINT: Добавить special/_comb.c в .gitignore

  • #6033: BUG: проверка запрошенного ранга аппроксимации в interpolative.svd

  • #6034: DOC: Исправлена документация для mannwhitneyu в stats.py

  • #6040: FIX: Исправление неправильной ссылки в f_oneway

  • #6044: BUG: (ordqz) всегда увеличивать параметр lwork на 1.

  • #6047: ENH: расширить special.spence на комплексные аргументы.

  • #6049: DOC: добавлена документация PR #5640 в заметки о выпуске 0.18.0

  • #6050: MAINT: небольшие улучшения, связанные с loggamma

  • #6070: Добавлен asarray для явного преобразования списка в массив numpy в wilcoxon…

  • #6071: DOC: фильтр сглаживания и ссылка decimate resample и т.д.

  • #6075: MAINT: перереализовать special.digamma для комплексных аргументов

  • #6080: избежать многократных вычислений в kstest

  • #6081: Clarified pearson correlation return value

  • #6085: ENH: разрешить длинные индексы разреженной матрицы с umfpack в spsolve()

  • #6086: исправить описание для присоединённых полиномов Лагерра

  • #6087: Исправленная строка документации splrep.

  • #6094: ENH: special: изменить сигнатуру zeta на zeta(x, q=1)

  • #6095: BUG: исправление переполнения целых чисел в special.spence

  • #6106: Исправлена проблема #6105

  • #6116: BUG: крайний случай логарифма матрицы

  • #6119: TST: DeprecationWarnings в stats на python 3.5 закрывает #5885

  • #6120: MAINT: sparse: очистка sputils.isintlike

  • #6122: DOC: optimize: в документации linprog следует указывать minimize вместо maximize

  • #6123: ДОКУМЕНТАЦИЯ: optimize: задокументировать fun поле в scipy.optimize.OptimizeResult

  • #6124: Перенос вычисления дополнения нулями для БПФ из signaltools в fftpack

  • #6125: MAINT: улучшить special.gammainc в a ~ x режим.

  • #6130: BUG: sparse: Исправление COO dot с нулевыми столбцами

  • #6138: ENH: stats: Улучшить поведение genextreme.sf и genextreme.isf

  • #6146: MAINT: упрощение реализации expit

  • #6151: MAINT: special: сделать вывод generate_ufuncs.py детерминированным

  • #6152: TST: special: улучшенный тест для gammainc при больших аргументах

  • #6153: ENH: Сделать next_fast_len публичным и быстрее

  • #6154: исправить опечатку "mush"–>"must"

  • #6155: DOC: Исправление некоторых некорректных списков определений RST

  • #6160: заставить logsumexp выдавать ошибку на маскированном массиве

  • #6161: добавлена недостающая скобка в документацию rosen

  • #6163: ENH: Добавлены распределения «kappa4» и «kappa3».

  • #6164: DOC: Незначительная чистка в integrate._bvp

  • #6169: Исправить mpf_assert_allclose для обработки итерируемых результатов, таких как отображения

  • #6170: Исправлена функция удобства pchip_interpolate

  • #6172: Исправлена неправильно расположенная скобка в строке документации

  • #6175: ENH: sparse.csgraph: передача индексов в shortest_path

  • #6178: TST: увеличить покрытие тестами sf и isf обобщенного экстремального...

  • #6179: TST: избежать предупреждения об устаревании от numpy

  • #6181: ENH: Граничные условия для CubicSpline

  • #6182: DOC: Добавить примеры/графы к max_len_seq

  • #6183: BLD: обновить файлы конфигурации сборки Bento для последних изменений.

  • #6184: BUG: исправление проблемы в io/wavfile для ввода float96.

  • #6186: ENH: Периодическая экстраполяция для PPoly и BPoly

  • #6192: MRG: Добавление circle-CI

  • #6193: ENH: sparse: избегать уплотнения при setitem

  • #6196: Исправлено отсутствие sqrt в документации расстояния Махаланобиса в cdist,…

  • #6206: MAINT: Незначительные изменения в solve_bvp

  • #6207: BUG: linalg: для BLAS, преобразовать complex256 в complex128, а не…

  • #6209: ОШИБКА: io.matlab: избежание переполнения буфера в read_element_into

  • #6210: BLD: использовать setuptools при сборке.

  • #6214: BUG: sparse.linalg: исправление ошибки в обработке сбоя LGMRES

  • #6215: MAINT: special: заставить loggamma использовать zdiv

  • #6220: DOC: Добавлен параметр

  • #6221: ENH: Улучшить решатель Ньютона для solve_bvp

  • #6223: pchip должен работать для массивов длины 2

  • #6224: signal.lti: устаревание кросс-классовых свойств/сеттеров

  • #6229: BUG: optimize: избежать бесконечного цикла в Newton-CG

  • #6230: Добавить пример применения гауссовского фильтра

  • #6236: MAINT: точность gumbel_l

  • #6237: MAINT: точность распределения Рэлея

  • #6238: MAINT: точность логистической регрессии

  • #6239: MAINT: точность распределения Брэдфорда

  • #6240: MAINT: избегать плохого fmin в l-bfgs-b из-за прерывания maxfun

  • #6241: MAINT: точность weibull_min

  • #6246: ENH: Добавить _support_mask к распределениям

  • #6247: исправлена ошибка вывода для примера с ode

  • #6249: MAINT: изменить метку оси x для stats.probplot на "теоретическая..."

  • #6250: DOC: исправить опечатки

  • #6251: MAINT: constants: отфильтровать тестовый шум от устаревших преобразований

  • #6252: MAINT: io/arff: удалить неиспользуемую переменную

  • #6253: Добавить примеры в scipy.ndimage.filters

  • #6254: MAINT: special: исправить некоторые предупреждения сборки

  • #6258: MAINT: точность обратного гамма-распределения

  • #6260: MAINT: signal.decimate - Использовать дискретно-временные объекты

  • #6262: BUG: odr: исправление форматирования строк

  • #6267: TST: исправить некоторые проблемы тестов в interpolate и stats.

  • #6269: TST: исправить некоторые предупреждения в наборе тестов

  • #6274: ENH: Добавить sosfiltfilt

  • #6276: DOC: обновить заметки о выпуске для 0.18.0

  • #6277: MAINT: обновлено сопоставление имен авторов

  • #6282: DOC: Исправление ссылок для scipy.stats.normaltest

  • #6283: DOC: дополнительные дополнения к заметкам о выпуске 0.18.0.

  • #6284: Добавить versionadded:: директива для логгамма.

  • #6285: BUG: stats: Несогласованность в документации multivariate_normal…

  • #6290: Добавить список авторов, gh-lists в заметки о выпуске 0.18.0

  • #6293: TST: special: ослабить точность теста

  • #6295: BUG: sparse: прекратить сравнение None и int в конструкторе bsr_matrix

  • #6313: MAINT: Исправление проблемы сборки travis-ci для python 3.5.

  • #6327: TST: signal: использовать assert_allclose для тестирования приблизительного равенства в…

  • #6330: BUG: spatial/qhull: выделение qhT через malloc для обеспечения совместимости с CRT…

  • #6332: TST: исправить тест stats.iqr, чтобы не выдавать предупреждения, и исправить длину строк.

  • #6334: MAINT: special: исправить тест для hyp0f1

  • #6347: TST: spatial.qhull: пропустить тест на 32-битных платформах

  • #6350: BUG: optimize/slsqp: не перезаписывать массив за пределами границ

  • #6351: BUG: #6318 Исправлена проблема переполнения целочисленной оси x в Interp1d 'nearest'

  • #6355: Backports for 0.18.0