SciPy 1.9.0 发行说明#

SciPy 1.9.0 是 6 个月辛勤工作的结晶。它包含许多新功能、大量错误修复、改进的测试覆盖率和更好的文档。此版本中有多项弃用和 API 更改,详情见下文。建议所有用户升级到此版本,因为它包含大量的错误修复和优化。在升级之前,我们建议用户检查自己的代码是否使用了已弃用的 SciPy 功能(运行代码时使用 python -Wd 并检查 DeprecationWarning 警告)。我们的开发重心现在将转向 1.9.x 分支的错误修复发布,以及在主分支上添加新功能。

此版本要求 Python 3.8-3.11 和 NumPy 1.18.5 或更高版本。

若要在 PyPy 上运行,需要 PyPy3 6.0+。

此版本的亮点#

  • 我们对构建系统进行了现代化改造,开始使用 meson,这显著提高了构建性能,并提供了更好的构建时配置和交叉编译支持。

  • 添加了 scipy.optimize.milp,这是用于混合整数线性规划的新函数。

  • 添加了 scipy.stats.fit,用于将离散和连续分布拟合到数据中。

  • 张量积样条插值模式已添加到 scipy.interpolate.RegularGridInterpolator 中。

  • 新增全局优化器(矩形分割算法) scipy.optimize.direct

新功能#

scipy.interpolate 改进#

  • 加快了高维插值情况下的 RBFInterpolator 计算速度。

  • scipy.interpolate.RegularGridInterpolator 及其教程添加了新的基于样条的插值方法。

  • scipy.interpolate.RegularGridInterpolatorscipy.interpolate.interpn 现在接受降序排列的点。

  • RegularGridInterpolator 现在可以处理长度为 1 的网格轴。

  • BivariateSpline 子类新增了一个 partial_derivative 方法,该方法构造一个代表原始样条导数的新样条对象。这与一元样条的相应功能 splderBSpline.derivative 相对应,可以显著加快重复计算导数的速度。

scipy.linalg 改进#

  • scipy.linalg.expm 现在支持 n 维数组。其速度也有所提高。

  • 最低要求的 LAPACK 版本提升至 3.7.1

scipy.fft 改进#

  • scipy.fft.fhtscipy.fft.ifht 添加了 uarray 多方法,以允许提供第三方后端实现,例如最近添加到 CuPy 中的实现。

scipy.optimize 改进#

  • 新增了一个全局优化器 scipy.optimize.direct(矩形分割算法)。对于函数评估开销较小的问题(如 SciPy 基准测试套件中的问题),就执行时间而言,direct 与 SciPy 中最好的其他求解器(dual_annealingdifferential_evolution)相比具有竞争力。有关更多详细信息,请参阅 gh-14300

  • scipy.optimize.curve_fit 添加了 full_output 参数,以输出额外的解信息。

  • scipy.optimize.differential_evolution 添加了 integrality 参数,允许对参数施加整数约束。

  • 添加了 vectorized 参数,使得每次迭代仅调用一次向量化目标函数。通过减少多次目标函数调用产生的解释器开销,这可以提高最小化速度。

  • scipy.optimize.linprog 的默认方法现在是 'highs'

  • 添加了 scipy.optimize.milp,这是用于混合整数线性规划的新函数。

  • newton_krylov 中添加了 Newton-TFQMR 方法。

  • shgodual_annealing 中添加了对 Bounds 类的支持,以使整个 scipy.optimize 的 API 更加统一。

  • differential_evolution 添加了 vectorized 关键字。

  • approx_fprime 现在支持向量值函数。

scipy.signal 改进#

scipy.sparse 改进#

  • scipy.sparse.csgraph.laplacian 添加了 copy 参数。使用 copy=False 进行原地计算可减少内存占用。

  • scipy.sparse.csgraph.laplacian 添加了 dtype 参数用于类型转换。

  • scipy.sparse.csgraph.laplacian 添加了 symmetrized 参数,以为有向图生成对称拉普拉斯矩阵。

  • scipy.sparse.csgraph.laplacian 添加了 form 参数,其取值为以下三个之一:arrayfunctionlo,决定输出拉普拉斯的格式:* array 是 numpy 数组(向后兼容的默认值);* function 是指向评估拉普拉斯-向量或拉普拉斯-矩阵乘积的 lambda 函数的指针;* lo 产生 LinearOperator 格式。

scipy.sparse.linalg 改进#

  • 提升了小规模输入情况下 lobpcg 的性能。

scipy.spatial 改进#

scipy.stats 改进#

  • scipy.stats.monte_carlo_test 执行单样本蒙特卡洛假设检验,以评估样本是否来自给定分布。除了能在没有小样本限制的情况下重现 scipy.stats.ks_1sampscipy.stats.normaltestscipy.stats.cramervonmises 等假设检验的结果外,它还允许使用任意统计量和分布执行类似检验。

  • 多个 scipy.stats 函数支持新的 axis(整数或整数元组)、nan_policy('raise'、'omit' 或 'propagate')和 keepdims 参数。这些函数还支持掩码数组作为输入,即使它们没有对应的 scipy.stats.mstats 版本。多维数组的边缘情况,例如当轴切片没有未掩码元素或整个输入大小为零时,现在可以得到一致处理。

  • scipy.stats.hmean 添加了 weights 参数。

  • scipy.stats.levy_stable 进行了多项改进。pdf 和 cdf 的数值评估有了实质性改进,解决了 [#12658](scipy/scipy#12658) 和 [#14944](scipy/scipy#14994)。当稳定性参数 alpha 接近或等于 1,以及 alpha 低于但接近最大值 2 时,改进尤为显著。用于计算 pdf 的替代快速傅里叶变换方法也已更新,采用了 Wang 和 Zhang 在 2008 年会议论文 Simpson’s rule based FFT method to compute densities of stable distribution 中提出的方法,使该方法比默认方法更具竞争力。此外,用户现在可以选择将 Levy Stable 分布的参数化更改为 Nolan 的“S0”参数化,该参数化在 SciPy 的 pdf 和 cdf 实现内部使用。“S0”参数化在 Nolan 的论文 [Numerical calculation of stable densities and distribution functions](https://doi.org/10.1080/15326349708807450) 中有详细说明,SciPy 的实现正是基于此。“S0”的优点是 deltagamma 是合适的的位置和尺度参数。在 deltagamma 固定时,所得分布的位置和尺度随着 alphabeta 的变化保持不变。对于默认的“S1”参数化,情况并非如此。最后,开放了更多选项,允许用户在默认方法和 FFT 方法计算 pdf 和 cdf 时,在运行时间和精度之间进行权衡。更多信息可以在此处的文档中找到(待链接)。

  • 添加了 scipy.stats.fit,用于将离散和连续分布拟合到数据中。

  • scipy.stats.combine_pvalues"pearson""tippet" 方法已修复,现在返回正确的 p 值,解决了 [#15373](scipy/scipy#15373)。此外,scipy.stats.combine_pvalues 的文档也得到了扩展和改进。

  • 与其他缩减函数不同,stats.mode 之前不会消耗操作所在的轴,并且在输入负轴时会失败。这两个错误都已修复。请注意,stats.mode 现在将消耗输入轴并返回一个移除了 axis 维度的 ndarray。

  • 为了提高可靠性,将 scipy.stats.ncf 的实现替换为 Boost 的实现。

  • scipy.stats.qmc.Sobol 添加了 bits 参数。它允许使用 0 到 64 位来计算序列。默认值为 None,为了向后兼容,对应于 30。使用更高的值可以采样更多的点。注意:bits 不影响输出 dtype。

  • scipy.stats.qmc.QMCEngine 添加了 integers 方法。它允许使用任何 QMC 采样器对整数进行采样。

  • 提高了 stats.pareto 的拟合速度和精度。

  • NumericalInversePolynomial 添加了 qrvs 方法,以使其与 NumericalInverseHermite 的情况一致。

  • 加快了 gennormnakagami 的随机变量生成速度。

  • 添加了 lloyd_centroidal_voronoi_tessellation,以允许通过迭代应用 Voronoi 图和定心操作来改进样本分布。

  • 添加了 scipy.stats.qmc.PoissonDisk,以便使用泊松圆盘采样方法进行采样。它保证样本之间至少相隔给定的半径 radius

  • 添加了 scipy.stats.pmean,用于计算加权幂平均值,也称为广义平均值。

弃用功能#

  • 由于与多个分布的形状参数 n 冲突,弃用在分布的 moment 方法中使用关键字参数 n。关键字 n 已替换为关键字 order

  • 类似地,弃用在分布的 interval 方法中使用关键字参数 alpha。关键字 alpha 已替换为关键字 confidence

  • 弃用了 scipy.optimize.linprog'simplex''revised simplex''interior-point' 方法。新代码中应使用 highshighs-dshighs-ipm 方法。

  • stats.mode 已弃用对非数值数组的支持。可以改用 pandas.DataFrame.mode

  • 函数 spatial.distance.kulsinski 已弃用,建议使用 spatial.distance.kulczynski1

  • 截断牛顿法 (TNC) 算法的 maxiter 关键字已弃用,建议使用 maxfun

  • Delauney.qhullvertices 关键字在仅在文档中被弃用很长时间后,现在会引发 DeprecationWarning。

  • rv_continuousrv_discreterv_sampleextradoc 关键字在仅在文档中被弃用很长时间后,现在会引发 DeprecationWarning。

到期的弃用#

我们正在持续推进长期以来的弃用工作。以下之前被弃用的功能将受到影响

  • 稀疏矩阵中的对象数组现在会引发错误。

  • 稀疏矩阵的不精确索引现在会引发错误。

  • scipy.spatial.SphericalVoronoi 传递 radius=None 现在会引发错误(不添加 radius 默认为 1,与之前一样)。

  • 如果输入 ndim > 1,多个 BSpline 方法现在会引发错误。

  • 统计分布的 _rvs 方法现在需要 size 参数。

  • scipy.signal.convolve2d 中传递无法转换为输出类型的 fillvalue 现在会引发错误。

  • scipy.spatial.distance 现在强制要求输入向量必须是一维的。

  • 移除了 stats.itemfreq

  • 移除了 stats.median_absolute_deviation

  • 移除了 kdtree.queryn_jobs 关键字参数以及对 k=None 的使用。

  • 移除了 interpolate.PPoly.extendright 关键字。

  • 移除了 scipy.linalg.solve_*debug 关键字。

  • 移除了 scipy.interpolate 中的 _ppform 类。

  • 移除了 BSR 方法 matvecmatmat

  • 移除了 cluster.dendrogrammlab 截断模式。

  • 移除了 cluster.vq.py_vq2

  • 移除了 optimize.minimize(method='Nelder-Mead') 的关键字参数 ftolxtol

  • 移除了 signal.windows.hanning

  • linalg 中移除了 LAPACK gegv 函数;这使得最低要求的 LAPACK 版本提升到 3.7.1。

  • 移除了 spatial.distance.matching

  • 移除了 scipy.random 作为 numpy.random 的别名。

  • scipy.misc 中移除了与文档字符串相关的函数(docformatinherit_docstring_fromextend_notes_in_docstringreplace_notes_in_docstringindentcount_linesfilldocunindent_dictunindent_string)。

  • 移除了 linalg.pinv2

向后不兼容的更改#

  • 多个 scipy.stats 函数现在在执行计算之前将 np.matrix 转换为 np.ndarray。在这种情况下,输出将是标量或具有适当形状的 np.ndarray,而不是 2D 的 np.matrix。类似地,虽然掩码数组的掩码元素仍会被忽略,但输出将是标量或 np.ndarray,而不是 mask=False 的掩码数组。

  • scipy.optimize.linprog 的默认方法现在是 'highs',而不是 'interior-point'(现在已弃用),因此默认方法不再支持回调函数和某些选项。使用默认方法时,如果找不到最优解(例如不可行问题),返回的 OptimizeResultx 属性现在为 None(而不是非最优数组)。

  • 对于 scipy.stats.combine_pvalues"pearson" 方法返回的检验统计量的符号已翻转,使得较高的统计量值现在对应于较低的 p 值,使该统计量与其他方法以及大多数文献保持一致。

  • scipy.linalg.expm 由于历史原因之前使用稀疏实现,因此接受稀疏数组。现在它仅适用于 nDarrays。对于稀疏用途,需要显式使用 scipy.sparse.linalg.expm

  • scipy.stats.circvar 的定义已恢复为文献中标准的定义;请注意,这与 scipy.stats.circstd 的平方不同。

  • 删除了 MultinomialQMCMultivariateNormalQMCQMCEngine 的继承。这移除了 fast_forwardreset 方法。

  • MultinomialQMC 的初始化现在需要通过 n_trials 指定试验次数。因此,MultinomialQMC.random 的输出现在具有正确的形状 (n, pvals)

  • 几个特定于函数的警告(F_onewayConstantInputWarningF_onewayBadInputSizesWarningPearsonRConstantInputWarningPearsonRNearConstantInputWarningSpearmanRConstantInputWarningBootstrapDegenerateDistributionWarning)已被更通用的警告取代。

其他更改#

  • SciPy 提供了一个开发者 CLI 草案,利用了 doitclickrich-click 工具。有关更多详细信息,请参阅 [gh-15959](scipy/scipy#15959)。

  • SciPy 贡献者指南已重新组织并更新(详情见 [#15947](scipy/scipy#15947))。

  • scipy.integrate 中的 QUADPACK Fortran 例程(支持 scipy.integrate.quad)已被标记为 recursive(递归)。这应该会修复多变量积分(nquad 及相关函数)中罕见的问题,并消除对特定编译器编译标志(如 ifort 的 /recursive)的需求。如果此更改对您造成困扰,请提交问题。这也适用于 scipy.interpolate 中的 FITPACK 例程,它们支持 splrepsplev 等,以及 *UnivariateSpline*BivariateSpline 类。

  • USE_PROPACK 环境变量已重命名为 SCIPY_USE_PROPACK;将其设置为非零值将像以前一样启用 PROPACK 库的使用。

  • 在 Windows 上使用 MSVC 构建 SciPy 现在至少需要 vc142 工具集(在 Visual Studio 2019 及更高版本中可用)。

子包的延迟访问#

在此版本之前,SciPy 的所有子包(clusterfftndimage 等)都必须显式导入。现在,这些子包在访问时会自动延迟加载,因此以下代码是可行的(如果为了交互式使用,但在实际代码中不推荐,请参阅 SciPy API):import scipy as sp; sp.fft.dct([1, 2, 3])。其优点包括:使交互式终端中导航 SciPy 更加容易,减少子包导入冲突(以前需要 import networkx.linalg as nla; import scipy.linalg as sla),并避免在教学和实验期间反复更新导入。另请参阅 [相关的社区规范文档](https://scientific-python.org/specs/spec-0001/)。

SciPy 切换到 Meson 作为其构建系统#

这是第一个使用 [Meson](https://mesonbuild.cn) 作为构建系统发布的版本。使用 pippypa/build 安装时,将使用 Meson(通过 meson-python 构建钩子调用)。这一更改带来了显著的好处——最重要的是更快的构建时间,同时还提供了对交叉编译的更好支持和更整洁的构建日志。

注意

此版本仍然支持基于 numpy.distutils 的构建。这些构建可以通过 setup.py 命令行界面调用(例如,python setup.py install)。计划在 1.10.0 版本发布前移除对 numpy.distutils 的支持。

从源码构建时,与使用 numpy.distutils 构建相比,有许多地方发生了变化。

  • 新的构建依赖项:mesonninjapkg-config。不再需要 setuptoolswheel

  • 支持的 BLAS 和 LAPACK 库没有变化,但发现机制发生了变化:现在使用 pkg-config 而不是硬编码路径或 site.cfg 文件。

  • 构建默认使用 OpenBLAS。有关详细信息,请参阅 选择 BLAS 和 LAPACK 库

可用于构建 wheel 的两个 CLI 是 pipbuild。此外,SciPy 仓库包含一个 python dev.py CLI,用于任何类型的开发任务(详情见其 --help)。有关旧的 (distutils) 和新的 (meson) 构建命令的比较,请参阅 Meson 和 distutils 的操作方式等效项

有关在 SciPy 中引入 Meson 支持的更多信息,请参阅 gh-13615这篇博客文章

作者#

  • endolith (12)

  • h-vetinari (11)

  • Caio Agiani (2) +

  • Emmy Albert (1) +

  • Joseph Albert (1)

  • Tania Allard (3)

  • Carsten Allefeld (1) +

  • Kartik Anand (1) +

  • Virgile Andreani (2) +

  • Weh Andreas (1) +

  • Francesco Andreuzzi (5) +

  • Kian-Meng Ang (2) +

  • Gerrit Ansmann (1)

  • Ar-Kareem (1) +

  • Shehan Atukorala (1) +

  • avishai231 (1) +

  • Blair Azzopardi (1)

  • Sayantika Banik (2) +

  • Ross Barnowski (9)

  • Christoph Baumgarten (3)

  • Nickolai Belakovski (1)

  • Peter Bell (9)

  • Sebastian Berg (3)

  • Bharath (1) +

  • bobcatCA (2) +

  • boussoffara (2) +

  • Islem BOUZENIA (1) +

  • Jake Bowhay (41) +

  • Matthew Brett (11)

  • Dietrich Brunn (2) +

  • Michael Burkhart (2) +

  • Evgeni Burovski (96)

  • Matthias Bussonnier (20)

  • Dominic C (1)

  • Cameron (1) +

  • CJ Carey (3)

  • Thomas A Caswell (2)

  • Ali Cetin (2) +

  • Hood Chatham (5) +

  • Klesk Chonkin (1)

  • Craig Citro (1) +

  • Dan Cogswell (1) +

  • Luigi Cruz (1) +

  • Anirudh Dagar (5)

  • Brandon David (1)

  • deepakdinesh1123 (1) +

  • Denton DeLoss (1) +

  • derbuihan (2) +

  • Sameer Deshmukh (13) +

  • Niels Doucet (1) +

  • DWesl (8)

  • eytanadler (30) +

  • Thomas J. Fan (5)

  • Isuru Fernando (3)

  • Joseph Fox-Rabinovitz (1)

  • Ryan Gibson (4) +

  • Ralf Gommers (327)

  • Srinivas Gorur-Shandilya (1) +

  • Alex Griffing (2)

  • Matt Haberland (461)

  • Tristan Hearn (1) +

  • Jonathan Helgert (1) +

  • Samuel Hinton (1) +

  • Jake (1) +

  • Stewart Jamieson (1) +

  • Jan-Hendrik Müller (1)

  • Yikun Jiang (1) +

  • JuliaMelle01 (1) +

  • jyuv (12) +

  • Toshiki Kataoka (1)

  • Chris Keefe (1) +

  • Robert Kern (4)

  • Andrew Knyazev (11)

  • Matthias Koeppe (4) +

  • Sergey Koposov (1)

  • Volodymyr Kozachynskyi (1) +

  • Yotaro Kubo (2) +

  • Jacob Lapenna (1) +

  • Peter Mahler Larsen (8)

  • Eric Larson (4)

  • Laurynas Mikšys (1) +

  • Antony Lee (1)

  • Gregory R. Lee (2)

  • lerichi (1) +

  • Tim Leslie (2)

      1. Lim (1)

  • Smit Lunagariya (43)

  • lutefiskhotdish (1) +

  • Cong Ma (12)

  • Syrtis Major (1)

  • Nicholas McKibben (18)

  • Melissa Weber Mendonça (10)

  • Mark Mikofski (1)

  • Jarrod Millman (13)

  • Harsh Mishra (6)

  • ML-Nielsen (3) +

  • Matthew Murray (1) +

  • Andrew Nelson (50)

  • Dimitri Papadopoulos Orfanos (1) +

  • Evgueni Ovtchinnikov (2) +

  • Sambit Panda (1)

  • Nick Papior (2)

  • Tirth Patel (43)

  • Petar Mlinarić (1)

  • petroselo (1) +

  • Ilhan Polat (64)

  • Anthony Polloreno (1)

  • Amit Portnoy (1) +

  • Quentin Barthélemy (9)

  • Patrick N. Raanes (1) +

  • Tyler Reddy (185)

  • Pamphile Roy (199)

  • Vivek Roy (2) +

  • sabonerune (1) +

  • Niyas Sait (2) +

  • Atsushi Sakai (25)

  • Mazen Sayed (1) +

  • Eduardo Schettino (5) +

  • Daniel Schmitz (6) +

  • Eli Schwartz (4) +

  • SELEE (2) +

  • Namami Shanker (4)

  • siddhantwahal (1) +

  • Gagandeep Singh (8)

  • Soph (1) +

  • Shivnaren Srinivasan (1) +

  • Scott Staniewicz (1) +

  • Leo C. Stein (4)

  • Albert Steppi (7)

  • Christopher Strickland (1) +

  • Kai Striega (4)

  • Søren Fuglede Jørgensen (1)

  • Aleksandr Tagilov (1) +

  • Masayuki Takagi (1) +

  • Sai Teja (1) +

  • Ewout ter Hoeven (2) +

  • Will Tirone (2)

  • Bas van Beek (7)

  • Dhruv Vats (1)

  • Arthur Volant (1)

  • Samuel Wallan (5)

  • Stefan van der Walt (8)

  • Warren Weckesser (84)

  • Anreas Weh (1)

  • Nils Werner (1)

  • Aviv Yaish (1) +

  • Dowon Yi (1)

  • Rory Yorke (1)

  • Yosshi999 (1) +

  • yuanx749 (2) +

  • Gang Zhao (23)

  • ZhihuiChen0903 (1)

  • Pavel Zun (1) +

  • David Zwicker (1) +

共有 154 人为本版本做出了贡献。名字旁带有 “+” 的人是第一次贡献补丁。此名单为自动生成,可能不完全完整。

1.9.0 版本已关闭的问题#

  • #1884: stats 分布拟合问题 (Trac #1359)

  • #2047: BivariateSpline 中缺少 derivatives() 方法 (Trac #1522)

  • #2071: TST: stats: `check_sample_var` 应该是双侧的 (Trac #1546)

  • #2414: 统计学中 binom 在非整数 n 下的问题 (Trac #1895)

  • #2623: stats.distributions 测试套件的统计功效

  • #2625: wilcoxon() 函数不返回 z-统计量

  • #2650: (2D) 插值函数应支持复数

  • #2834: ksone 拟合

  • #2868: nan 与 stats.percentileofscore

  • #2877: distributions.ncf 数值问题

  • #2993: optimize.approx_fprime 与雅可比矩阵

  • #3214: stats 分布的 ppf-cdf 往返测试

  • #3758: 由带有非整数的 `values` 定义的离散分布…

  • #4130: BUG: stats: fisher_exact 返回错误的 p 值

  • #4897: 根据 http://stackoverflow.com/questions/30048315,expm 速度比 matlab 慢 10 倍

  • #5103: 文档暗示 scipy.sparse.linalg.expm_multiply 支持 LinearOperator…

  • #5266: Netlib LAPACK >3.5.0 中的过时例程

  • #5890: 使用 scipy.interpolate.RegularGridInterpolator 时的未定义行为…

  • #5982: scipy.stats.levy_stable.interval 中的关键字冲突

  • #6472: scipy.stats.invwishart 不检查尺度矩阵是否对称

  • #6551: BUG: stats: gmean 和 hmean 的文档与行为不一致

  • #6624: RegularGridInterpolator 对 nan 的处理不正确

  • #6882: 某些递归 scipy.integrate.quad (例如 dblquad 和 nquad)…

  • #7469: 误导性的 interp2d 文档

  • #7560: RegularGridInterpolator 是否应支持长度为 1 的维度?

  • #8850: Scipy.interpolate.griddata 错误:忽略的异常:'scipy.spatial.qhull._Qhull.__dealloc__'

  • #8928: BUG: scipy.stats.norm 在 loc… 时函数的期望值错误

  • #9213: C++ 代码中的 __STDC_VERSION__ 检查

  • #9231: stats.fisher_exact 中的死循环

  • #9313: 如果…几何分布 stats.geom 返回负值

  • #9524: interpn 在数据完全有效的情况下返回 nan

  • #9591: 当 kind=“previous” 时 scipy.interpolate.interp1d 不进行外推…

  • #9815: stats.mode 的 nan_policy ‘propagate’ 不起作用?

  • #9944: `scipy.interpolate.RectBivariateSpline` 的文档是…

  • #9999: BUG: Cython 和 C 中的 malloc() 调用未检查…

  • #10096: 添加 circstd(和 circvar?)的文献引用

  • #10446: RuntimeWarning: stats.genextreme 中遇到无效值

  • #10577: 关于 scipy.stats 路线图的额外讨论

  • #10821: 也出现在 Scikit-Learn 中的 Yeo-Johnson 变换错误

  • #10983: 计算超过 20% 的特征值时 LOBPCG 效率低下

  • #11145: scipy.sparse.linalg.splu 出现意外的 SparseEfficiencyWarning

  • #11406: 在奇异矩阵上运行 scipy.sparse.linalg.svds (v1.4.1) 没有…

  • #11447: scipy.interpolate.interpn:处理 ValueError(‘The points in dimension…

  • #11673: intlinprog:整数线性规划求解器

  • #11742: MAINT: stats: 单独获取偏度比…慢 34000 倍

  • #11806: 使用 `weibull_min` 进行分布拟合时出现意想不到的糟糕结果…

  • #11828: UnivariateSpline 在…上多线程运行时给出不同的结果

  • #11948: 拟合离散分布

  • #12073: 在文档中添加注释

  • #12370: truncnorm.rvs 在 1.5.0rc2 版本中运行极慢

  • #12456: 添加广义平均值计算

  • #12480: RectBivariateSpline 导数评估器很慢

  • #12485: linprog 返回错误消息

  • #12506: ENH: stats: 统计检验的单侧 p 值

  • #12545: stats.pareto.fit 引发 RuntimeWarning

  • #12548: scipy.stats.skew 返回 MaskedArray

  • #12633: 提供更简单的开发工作流?

  • #12658: scipy.stats.levy_stable.pdf 可能不准确并返回 nan

  • #12733: scipy.stats.truncnorm.cdf 运行缓慢

  • #12838: `scipy.linalg.expm` 接受多个矩阵

  • #12848: DOC: stats: 多元分布文档问题

  • #12870: Levy Stable 随机变量代码有一个拼写错误

  • #12871: Levy Stable 分布使用的参数化不是位置…

  • #13200: scipy.optimize.linprog 产生的错误

  • #13462: scipy.stats 公共 API 中有太多的警告和结果对象

  • #13582: ENH: stats: 具有数组形状的 `rv_continuous.stats`:使用 `_stats`…

  • #13615: RFC: 切换到 Meson 作为构建系统

  • #13632: stats.rv_discrete 不检查 xk 值是否为整数

  • #13655: MAINT: stats.rv_generic:`moment` 方法回退到 `_munp`…

  • #13689: 当 mode=exact 时,Wilcoxon 无法正确检测结(ties)。

  • #13835: 更改 `interval()` 方法中 `alpha` 参数的名称

  • #13872: 向 `scipy.integrate.dblquad` 添加方法详情或引用

  • #13912: 向 QMC 添加泊松圆盘采样

  • #13996: Fisk 分布文档拼写错误

  • #14035: `roots_jacobi` 支持大参数值

  • #14081: `scipy.optimize._linprog_simplex._apply_pivot` 依赖于非对称…

  • #14095: scipy.stats.norm.pdf 占用过多时间和内存

  • #14162: RectBivariateSpline 的线程安全性

  • #14267: BUG: 在线文档返回 404 - url 中的 `reference` 错误

  • #14313: ks_2samp:示例描述与示例输出不符

  • #14418: 针对具有相同单一样本的两个分布的 `ttest_ind`…

  • #14455: 从 highs 添加混合整数线性规划

  • #14462: Shapiro 检验返回负 p 值

  • #14471: ‘revised simplex’ 和 ‘interior-point’ 方法极其…

  • #14505: `优化收敛到超出范围的参数`…

  • #14527: KDTree 导致段错误

  • #14548: 在 `Scipy.spatial.transform.rotation.Rotation` 的四元数中添加约定标志

  • #14565: optimize.minimize: 回调的存在导致 TNC 方法…

  • #14622: BUG: (某种程度上) mannwhitneyu 在样本不平衡时达到最大递归限制…

  • #14645: ENH:尝试使用大量数据进行 bootstrap 时出现 MemoryError...

  • #14716: BUG:stats:`loguniform` 分布过参数化。

  • #14731: BUG:scipy.sparse.csgraph.maximum_flow 中残差图不正确

  • #14745: BUG:scipy.ndimage.convolve 文档有误

  • #14750: ENH:添加另一种无导数优化方法

  • #14753: 提议合作通过 minimax 进行截断正态估计...

  • #14777: BUG:stats.t 当 df=np.inf 时极限错误且无警告

  • #14793: BUG:当坐标包含...时,cKDTree.query_pairs 中丢失配对

  • #14861: BUG:当所有边界都相等时错误信息不明确...

  • #14889: BUG:NumPy 的 `random` 模块不应在 `scipy` 中...

  • #14914: 带有代码覆盖率的 CI 任务(再次)失败

  • #14926: RegularGridInterpolator 应更名为 RectilinearGridInterpolator

  • #14986: 防止新 Python 版本尝试安装旧版本...

  • #14994: BUG:Levy 稳定分布

  • #15009: BUG:scipy.stats.multiscale_graphcorr p 值的计算方式不同...

  • #15059: BUG:find_peaks_cwt 的文档与代码不一致

  • #15082: DOC:从截断正态分布中采样

  • #15110: BUG:truncnorm.cdf 在尾部返回错误值

  • #15125: 弃用 `scipy.spatial.distance.kulsinski`

  • #15133: BUG:Log_norm 描述不正确且产生错误的...

  • #15150: BUG:对于向量数据,RBFInterpolator 比 Rbf 慢得多

  • #15172: BUG:special:`log_ndtr` 的相对误差较高

  • #15195: BUGS:stats:关于发出警告和/或...分布的跟踪议题

  • #15199: BUG:`spsolve_triangular` 发生错误

  • #15210: BUG:稀疏矩阵与...进行 `__rmul__` 运算时引发 ValueError

  • #15245: MAINT:scipy.stats._levy_stable 应被视为子包...

  • #15252: DOC:多元正态 CDF 文档字符串拼写错误

  • #15296: BUG:SciPy 1.7.x 在 Cygwin 上的构建失败

  • #15308: BUG:OpenBLAS 0.3.18 支持

  • #15338: DOC:将 `f_oneway` 中的 `*args` 参数重命名为 `*samples`

  • #15345: BUG:boschloo_exact 给出的 p 值 > 1(有时为 nan)

  • #15368: `unuran_wrapper.pyx` 的构建警告

  • #15373: BUG:combine_pvalues 的 Tippett 和 Pearson 方法不...

  • #15415: `integrate.quad_vec` 缺少 `limit` 参数的文档

  • #15456: 在 Windows 上使用 Mingw-w64 构建时 HiGHS 代码发生段错误

  • #15458: DOC:scipy.interpolate.bisplev 的文档不准确

  • #15488: ENH:文档中缺少 scipy.optimize 的示例

  • #15507: BUG:scipy.optimize.linprog:算法确定了问题...

  • #15508: BUG:multivariate_normal 中的错误消息不正确

  • #15541: BUG:scipy.stats.powerlaw,为什么 x 必须 ∈ (0,1)?x 可以超过...

  • #15551: MAINT:stats:弃用 `stats.mode` 对非数值数组的支持

  • #15568: BENCH/CI:基准测试超时

  • #15572: BUG:`scipy.spatial.transform.rotation` 错误的弃用...

  • #15575: BUG:初始构建测试失败 [arm64 机器]

  • #15589: BUG:scipy.special.factorialk 文档字符串与行为不一致

  • #15601: BUG:当 `average=='median'` 时 `signal.csd` 的比例因子...

  • #15617: ENH:stats:所有多元分布都应是可冻结的

  • #15631: BUG:stats.fit:doctest 中间歇性失败

  • #15635: CI:ASK:移除 LaTeX 文档构建?

  • #15638: DEV:构建文档时 `dev.py` 缺少 PYTHONPATH

  • #15644: DOC:stats.ks_1samp:示例中的注释不正确

  • #15666: CI:main 分支上的 CircleCI build_docs 失败

  • #15670: BUG:test__dual_annealing.py 的 test_bounds_class 中出现 AssertionError

  • #15689: BUG:rv_continuous 的 fit 方法中形状参数的默认值...

  • #15692: CI:main 分支上的 scipy.scipy (Main refguide_asv_check) 失败

  • #15696: DOC:文档中的错误信息 - scipy.stats.ttest_1samp

  • #15700: BUG:test_propack.py 中出现 AssertionError

  • #15730: BUG:抛出 'std::out_of_range' 实例后调用 terminate...

  • #15732: DEP:执行对稀疏矩阵中使用不精确索引的弃用

  • #15734: DEP:处理 bspline 中 ndim >1 的弃用

  • #15735: DEP:为 scipy.linalg.solve 的 sym_pos 关键字添加实际的 DeprecationWarning

  • #15736: DEP:从 `scipy.linalg.solve_*` 中移除 `debug` 关键字

  • #15737: DEP:执行 pinv2 的弃用

  • #15739: DEP:加强 optimize.minimize 中对大于 1 维输入的弃用

  • #15740: DEP:执行 spatial.distance 中对压缩输入向量的弃用

  • #15741: DEP:移除 spatial.distance.matching

  • #15742: DEP:如果在 `signal.convolve2d` 中 fillvalue 无法转换为输出类型,则抛出异常

  • #15743: DEP:强制执行 `spatial.SphericalVoronoi` 的 radius 参数

  • #15744: DEP:加强 dual_annealing 参数 'local_search_options' 的弃用

  • #15745: DEP:移除 signal.windows.hanning

  • #15746: DEP:从 KDTree.query 中移除 k=None

  • #15747: DEP:stats:移除对不带 `size` 参数的 `_rvs` 的支持

  • #15750: DEP:从 kdtree 中移除 `n_jobs`

  • #15751: DEP:从 neldermead 中移除 ftol/xtol

  • #15752: DEP:从 interpolate.PPoly.extend 中移除 right 关键字

  • #15753: DEP:移除 `_ppform`

  • #15754: DEP:从 dendrogram 中移除 mlab 模式

  • #15757: DEP:文档字符串相关的弃用

  • #15758: DEP:移除 LAPACK *gegv 函数

  • #15759: DEP:移除旧的 BSR 方法

  • #15760: DEP:移除 py_vq2

  • #15761: DEP:移除 stats.itemfreq

  • #15762: DEP:移除 stats.median_absolute_deviation

  • #15773: BUG:iirfilter 允许带通和带阻滤波器的 Wn[1] < Wn[0]...

  • #15780: BUG:Azure 上的 CI 因 PyTest 7.1 损坏

  • #15843: BUG:scipy.stats.brunnermunzel 对未记录的情况错误地返回 nan...

  • #15854: CI:Windows Meson 任务在下载 OpenBLAS 二进制文件时偶尔失败

  • #15866: BUG/CI:标记为 “Linux Tests...” 的测试使用了错误的 python 版本

  • #15871: BUG:stats:`TestTruncnorm.test_moments` 在...上测试失败

  • #15899: BUG:_calc_uniform_order_statistic_medians 文档示例...

  • #15927: BUG:signal.convolve 中对 INF 和 NAN 的处理不一致

  • #15931: BUG:scipy/io/arff/tests/test_arffread.py::TestNoData::test_nodata...

  • #15960: BUG:scipy.signal.lfilter 中的文档错误

  • #15961: BUG:scipy.stats.beta 和 bernoulli 在 float32 输入时失败

  • #15962: macOS Meson 构建中 `_matfuncs_expm` 与... 之间的竞态条件

  • #15987: CI:`np.matrix` 弃用警告

  • #16007: BUG:`ttest_ind_from_stats` 中的文档令人困惑

  • #16011: BUG:scipy.optimize.basinhopping 文档拼写错误

  • #16020: BUG:dev.py FileNotFoundError

  • #16027: jc 应该是 (n-1)/2

  • #16031: BUG:scipy.sparse.linalg.norm 不适用于稀疏数组

  • #16036: f-strings 缺少 `f` 前缀

  • #16054: Bug:使用 dev.py 的 Meson 构建未能检测到 debian 上的 SciPy...

  • #16065: BUG:使用 `python runtests.py` 的 Gitpod 构建失败;迁移到...

  • #16074: BUG:refguide 检查在 `numpydoc==1.3` 下失败

  • #16081: CI, MAINT:stats.describe 出现微小的 refguide 失败

  • #16121: DOC:scipy.interpolate.RegularGridInterpolator 和 interpn 工作...

  • #16162: BUG:curve_fit 在处理 Pandas float32 时给出错误结果

  • #16171: BUG:scipy.stats.multivariate_hypergeom.rvs 引发 ValueError...

  • #16219: `TestSobol.test_0dim` 在 32 位 Linux 任务上失败

  • #16233: BUG:由于新引用导致函数 `sf_error` 内存泄漏...

  • #16254: DEP:为 `_minimize_tnc` 中的 `maxiter` 参数添加弃用警告

  • #16292: BUG:编译错误:没有匹配的构造函数用于初始化...

  • #16300: BLD:在 Ubuntu virtualenv 中使用 meson 进行 pip install 的构建问题

  • #16337: TST:stats/tests/test_axis_nan_policy.py::test_axis_nan_policy_full...

  • #16347: TST, MAINT:wheels 仓库中 32 位 Linux 测试失败

  • #16358: TST, MAINT:test_theilslopes_warnings 在 32 位 Windows 上失败

  • #16378: DOC:pydata-sphinx-theme v0.9 默认根据...切换暗黑模式

  • #16381: BUG:bootstrap 对配对统计量抛出 ValueError

  • #16382: BUG:truncnorm.fit 拟合不正确

  • #16403: MAINT:由于新的浮点数类型,NumPy main 分支需要一些更新...

  • #16409: BUG:当数组类型错误时 qhull 出现 SIGSEGV

  • #16418: BUG:破坏性变更:scipy.stats.mode 返回值已更改...

  • #16419: BUG:当某些...时 scipy.stats.nbinom.logcdf 返回错误结果

  • #16426: BUG:stats.shapiro 就地修改用户数组

  • #16446: BUG:macOS Monterey + xcode 13.2 上的 stripping 问题

  • #16465: BLD:新的 sdist 存在元数据问题

  • #16466: BUG:linprog 失败 - OptimizeResult.x 返回 NoneType

  • #16495: HiGHS 无法在 windows 上编译 (conda-forge 基础设施)

  • #16523: BUG:预发布任务中的测试失败:`TestFactorized.test_singular_with_umfpack`

  • #16540: BLD:meson 0.63.0 和新的 CI Linux 测试失败

  • #16555: 从源码构建 1.9.x 分支需要 meson-python 中的修复...

  • #16609: BUG:`scipy.optimize.linprog` 对平凡的...报告最优解

  • #16681: BUG:linprog 整数性只接受 list,不接受 array

  • #16718: BUG:Cython 0.29.31 出现 memoryview 错误

1.9.0 的拉取请求 (Pull requests)#

  • #9523: ENH:对稳定分布 (Stable distribution) 的改进

  • #11829: 修复 svds 中对小奇异值的安全处理。

  • #13490: DEV:stats:检查分布/方法关键字名称冲突

  • #13572: ENH:scipy.stats.percentileofscore 的 n 维及 nan_policy 支持

  • #13918: ENH:用于 QMC 的泊松盘采样 (Poisson Disk sampling)

  • #13955: DOC:代码风格和文档字符串指南的 SciPy 扩展。

  • #14003: DOC:阐明 `stats.fisk` 的 pdf 定义

  • #14036: ENH:修复 roots_jacobi 及相关特殊函数的数值问题...

  • #14087: DOC:解释 ttest 函数中的零假设

  • #14142: DOC:为解包问题添加更好的错误提示

  • #14143: 在 expm_multiply 中支持 LinearOperator

  • #14300: ENH:将 DIRECT 算法添加到 ``scipy.optimize``

  • #14576: ENH:stats:添加单样本蒙特卡洛假设检验

  • #14642: ENH:将 Lloyd 算法添加到 `scipy.spatial` 以改进...

  • #14718: DOC:stats:调整 bootstrap 文档以强调 batch 控制...

  • #14781: BUG:stats:处理 `t` 分布中的无穷大 `df`

  • #14847: ENH:BLD:支持使用 Meson 构建 SciPy

  • #14877: DOC:ndimage convolve origin 文档 (#14745)

  • #15001: ENH:sparse.linalg:更全面的测试(不仅针对一维...

  • #15026: ENH:允许 approx_fprime 处理向量值函数

  • #15079: ENH:linalg:expm 改版及 ndarray 处理

  • #15140: ENH:使 `stats.kappa3` 支持数组输入

  • #15154: DOC:`lobpcg` 文档字符串示例中的一个小 bug

  • #15165: MAINT:避免在 scipy.__init__.py 中使用 del 移除 numpy 符号

  • #15168: REL:设置版本为 1.9.0.dev0

  • #15169: DOC:修复多元分布中方法的格式

  • #15171: `AttrDict` 在缺少属性时抛出 `AttributeError`,...

  • #15176: BUG:special:清理一些私有命名空间并修复 `special.__all__`

  • #15182: MAINT:修复拼写错误 principle -> principal

  • #15184: MAINT:CI:将 'Nightly CPython' 任务重命名为 'NumPy main'

  • #15187: BUG:special:修复 log_ndtr 的数值精度问题

  • #15188: MAINT:sparse.linalg:使用更简洁易用的 f-string...

  • #15190: MAINT:interpolate:使用...加速 RBFInterpolator 评估

  • #15196: BUG:stats:修复两个分布中支持集端点的处理。

  • #15197: MAINT:构建依赖更新

  • #15202: MAINT:special:在严格...中不要为 'extern "C"' 使用宏

  • #15205: BUG:stats:修复由若干分布产生的虚假警告。

  • #15207: MAINT:sparse.linalg:使用稀疏矩阵迹的接口...

  • #15219: DOC:修正了 ndimage.sum_labels 的文档字符串

  • #15223: DOC:finite_diff_rel_step 文档字符串中 x0->x,关闭 #15208

  • #15230: ENH:通过 `__getattr__` 暴露子模块以支持延迟访问

  • #15234: TST:stats:将非常慢的测试标记为 `xslow`

  • #15235: BUG:修复 spmatrix 的 rmul 调度

  • #15243: DOC:stats:为 gstd 添加引用

  • #15244: 为形态学添加示例:二值膨胀和腐蚀

  • #15250: ENH:使 `stats.kappa4` 支持数组

  • #15251: [MRG] ENH:更新 `laplacian` 函数引入新的...

  • #15255: MAINT:在 `runtests.py` 中移除 `distutils` 使用以修复弃用...

  • #15259: MAINT:optimize, special, signal:使用自定义警告代替...

  • #15261: DOC:在 Hausdorff 距离计算中添加行内注释

  • #15265: DOC:更新 .mailmap

  • #15266: CI:从 Windows 任务中移除 coverage 使用

  • #15269: BLD:为 `stats/_levy_stable` 添加 setup.py

  • #15272: BUG:修复当 a 趋向无穷大时的 owens_t 函数

  • #15274: DOC:修复 _multivariate.py 中 _cdf() 函数的文档字符串

  • #15284: TST:静默 `signal.place_poles` 中来自 `np.det` 的 RuntimeWarning...

  • #15285: CI:简化 32 位 Linux 测试

  • #15286: MAINT:Highs 子模块 CI 问题 - 使用浅克隆 (shallow cloning)

  • #15289: DOC:杂项 numpydoc 格式化。

  • #15291: DOC:更多文档字符串/numpydoc 格式化。

  • #15294: ENH:为 linprog 添加整数约束

  • #15300: DOC:杂项目录文档更新。

  • #15302: DOC:更多文档字符串格式重排。

  • #15304: CI:通过添加 HiGHS 子模块检出来修复 Gitpod 构建

  • #15305: BLD:更新 NumPy 至 >=1.18.5,setuptools 至 <60.0

  • #15309: CI:在 Azure 任务中更新 OpenBLAS 至 0.3.18

  • #15310: ENH:signal:添加 Kaiser-Bessel 派生窗函数

  • #15312: BUG:special:修复 pseudo_huber 在 r/delta... 时的精度损失

  • #15314: MAINT:将 `master` 分支重命名为 `main` 后所需的更改

  • #15315: MAINT:适配 NumPy master -> main 的重命名

  • #15325: CI:重组两个 Windows Azure CI 任务,且不运行 'full'...

  • #15330: ENH:optimize:支持...中未记录的选项 `full_output`

  • #15336: DOC:更新详细路线图

  • #15344: MAINT:stats:将 `*args` 参数重命名为 `*samples`

  • #15347: ENH:stats:在调和平均值中加入权重

  • #15352: BLD:在 conda 环境中为 `setuptools<60.0` 设置上限...

  • #15357: ENH:interpolate:为 RegularGridInterpolator 添加新方法。

  • #15360: MAINT:加速 scipy.stats 中 nakagami 的 rvs

  • #15361: MAINT:sparse.linalg:移除不必要的操作

  • #15366: 使 signal 函数尊重输入数据类型 (dtype)。

  • #15370: DOC:治理成员迁移至 scipy.org

  • #15371: MAINT:stats:修复 unuran 编译时警告

  • #15378: MAINT:移除对 gmpy2 的版本固定

  • #15380: ENH/MAINT:Sphinx 主题的版本切换器

  • #15385: DOC:修复拼写错误

  • #15387: MAINT:修复若干构建警告。

  • #15388: DOC:interpolate:改进 `RectBivariateSpline` 文档

  • #15391: ENH:图形拉普拉斯作为 LinearOperator,添加 dtype 和对称化...

  • #15392: ENH:differential_evolution 的整数约束

  • #15394: ENH:optimize:对 `LinearConstraint` 类的改进

  • #15396: DOC:GitHub 上的 Git:// 协议即将移除。

  • #15399: ENH:stats:为 `hmean` 添加 `axis` 元组和 `nan_policy`

  • #15400: MAINT:sparse.linalg:将 GMRES 的测试函数移动到...

  • #15401: MAINT:DOC:来自 analytics.scientific-python 的统计分析

  • #15402: DOC:更新 pip_quickstart (子模块)

  • #15406: MAINT:使用 `Rotation.Random` 代替手动生成

  • #15407: BLD:meson:分离 pyx->c 和 Python 扩展构建

  • #15408: MAINT:在 `Rotation.align_vectors` 中检查负权重

  • #15410: ENH:添加 `order` 参数以指定四元数格式

  • #15413: ENH:stats:为 `gennorm` 添加 `rvs` 方法

  • #15424: ENH:在小规模情况下绕过 lobpcg 中的 LinearOperator

  • #15427: MAINT:管理 `sparse.linalg` 中的导入

  • #15431: 还原 “ENH:添加 `order` 参数以指定四元数格式”

  • #15436: ENH:stats:fit:用于拟合离散和连续分布的函数...

  • #15439: ENH:differential_evolution 的 vectorized 关键字

  • #15440: MAINT:尝试在不使用...的情况下在 `runtests.py` 中检测 scipy 路径

  • #15442: MAINT:修复 windows 上的 meson 构建警告

  • #15443: DOC, BUG:修复自定义 `scipy.optimize:function` 域指令的标题重映射错误

  • #15445: ENH:stats:为离散分布添加 `nnlf` 方法

  • #15451: BLD:进一步精细化 Cython 依赖

  • #15452: BUG/DOC/TST:combine_pvalues:修复 Tippett 和 Pearson 方法

  • #15453: ENH:使 dual_annealing 支持 Bounds 类

  • #15454: BLD:移除 `spatial._distance_wrap` 对 libnpymath 的依赖

  • #15455: ENH:在 shgo 中支持 Bounds 类

  • #15459: DOC:记录函数 `integrate.quad_vec` 的 `limit` 参数。

  • #15460: ENH:optimize:milp:混合整数线性规划

  • #15462: CI:将一个 macOS CI 任务从 distutils 切换到 meson

  • #15464: ENH:`linear_sum_assignment` 的性能提升

  • #15465: DOC:stats:在 gmean 的公式和示例中添加权重...

  • #15466: MAINT:修复 CPython 3.11 的编译错误

  • #15469: MAINT:移除 `distutils` 使用

  • #15470: ENH:`stats.qmc`:更快的超立方体点比较和置乱...

  • #15472: ENH:stats:为 `skew` 添加 `axis` 元组和 `nan_policy`

  • #15485: BLD:更新 Meson 构建文件以实现更准确的链接和...

  • #15487: MAINT:bsplines.py 中的拼写错误

  • #15496: DOC:signal:修正了 butter 带通滤波器的参数 'order'

  • #15497: MAINT:更新自带的 uarray

  • #15499: CI:从 32 位 linux 任务中移除 matplotlib,其构建失败

  • #15501: MAINT:移除未使用的变量警告

  • #15502: DEV:meson:允许指定构建目录和安装前缀

  • #15512: MAINT:optimize.linprog:将 HiGHS 设为默认并弃用旧的...

  • #15523: DOC:修正了 dev/roadmap.html 中 fluiddyn 的 transonic 愿景链接。

  • #15526: MAINT:在 scipy.stats 的 NumericalInversePolynomial 中添加 qrvs 方法

  • #15529: DOC:向前移植 1.8.0 发布说明

  • #15532: TST:参数化 test_ldl_type_size_combinations

  • #15546: DOC:缺失的 section 标量

  • #15555: MAINT:使 unuran 浅克隆 (shallow clone)

  • #15557: DOC:修正 bisplev 文档中的不准确之处

  • #15559: BENCH:精选 linalg 求解器以方便扩展

  • #15560: DOC:贝塞尔函数的类型和返回值

  • #15561: MAINT:更新 HiGHS 子模块以包含对 Windows 段错误的修复

  • #15563: CI:在 GitHub Actions 上添加使用 Meson 的 Windows CI 任务

  • #15564: DOC:多余的反引号

  • #15565: DOC:章节中下划线长度不正确。

  • #15567: ENH:stats.pareto 对参数组合的拟合改进

  • #15569: DOC:pip 快速入门:setup.py -> meson

  • #15570: MAINT:提高 test_linprog 的测试容差

  • #15571: DOC:下划线长度错误

  • #15578: 使 Windows Python 设置更标准化

  • #15581: MAINT:明确 spatial.transform.rotation 的弃用警告

  • #15583: DOC:明确随机旋转中的 O(N) SO(N)

  • #15586: ENH:stats:为 pearsonr 添加 'alternative' 和置信区间

  • #15590: DOC:factorialk 文档字符串与代码不一致

  • #15597: DOC:根据 doctest 更新 `hyp2f1` 文档字符串示例

  • #15598: BUG/ENH:`lsq_linear`:修复了初始步中错误的 `lsmr_tol`...

  • #15603: BENCH:optimize:milp:添加 MILP 基准测试

  • #15606: MAINT:允许使用乘号 `×`

  • #15611: BUG:signal:修复 csd(…, average=”median”) 中的中值偏差

  • #15616: CI:固定 asv 版本以避免 0.5/0.5.1 中的减速

  • #15619: DOC:stats:更新 interval 和 moment 方法签名

  • #15625: MAINT:清理与第三方相关的 `type: ignore` 注释...

  • #15626: TST, MAINT:忽略 np distutils 依赖

  • #15629: MAINT:stats:修复 `trim1` 的 `axis` 行为

  • #15632: ENH:stats.wilcoxon:返回 z-统计量(应要求)

  • #15634: CI:改进并发性,在 PR 更新时取消正在运行的任务

  • #15645: DOC:为 `sparse.linalg.cg` 文档添加代码示例。

  • #15646: DOC:stats.ks_1samp:修正示例

  • #15647: ENH:为 `stats.qmc.Sobol` 添加可变位 (variable bits)

  • #15648: DOC:为 `scipy.special.ellipr{c,d,f,g,j}` 文档添加示例

  • #15649: DEV/DOC:移除 latex/pdf 文档

  • #15651: DOC:stats.ks_2samp/stats.kstest:修正示例

  • #15652: DOC:stats.circstd:添加引用、注释、说明

  • #15655: REL:修复 pavement.py 中发布说明编写的一个小问题

  • #15656: DOC:修复 eigh 文档中 subset_by_index 的示例

  • #15661: DOC:为优化用户指南添加更多示例

  • #15662: DOC:stats.fit:修复 doctest 中间歇性失败

  • #15663: DOC:stats.burr12:修复拼写错误

  • #15664: BENCH:添加 special.factorial/factorial2/factorialk 的基准测试

  • #15673: DOC:修复 intersphinx 链接

  • #15682: MAINT:sparse.linalg:清理...中导入的不必要模块

  • #15684: DOC:为 scipy.special.chndtr 添加公式及文档改进...

  • #15690: ENH:为快速汉克尔变换 (fast Hankel transforms) 添加 uarray 多重方法

  • #15694: MAINT,CI:signal:修复失败的 refguide 检查

  • #15699: DOC:stats.ttest_1samp:更新示例

  • #15701: BUG:修复 dual_annealing 边界测试

  • #15703: BUG:修复 test_propack.py 中的测试失败(放宽 atol)

  • #15710: MAINT:sparse.linalg:`bnorm` 仅计算一次

  • #15712: ENH:`scipy.stats.qmc.Sobol`:支持 32 位或 64 位计算

  • #15715: ENH:stats:为 moment 添加 _axis_nan_policy_factory

  • #15718: ENH:将 `write_release_and_log` 迁移为独立脚本

  • #15723: TST:stats:使 `check_sample_var` 变为双侧

  • #15724: TST:stats:简化 `check_sample_mean`

  • #15725: DEV:尝试从开发安装路径检测 scipy

  • #15728: ENH:将模糊的异常消息更改为更具描述性的内容...

  • #15729: ENH:stats:添加加权幂平均 (weighted power mean)

  • #15763: ENH:stats:用 Boost 非中心 f 分布替换 ncf

  • #15766: BUG:改进重构后...中私有属性的异常处理

  • #15768: [DOC] 修复 cython 优化帮助示例中的拼写错误

  • #15769: MAINT:stats:根据需要在 `_argcheck` 中检查整数性

  • #15771: MAINT:stats:解决离散 rvs 类型的平台依赖性

  • #15774: MAINT:stats:移除弃用的 `median_absolute_deviation`

  • #15775: DOC:stats.lognorm:重新描述关于参数化的说明

  • #15776: DOC:stats.powerlaw:更明确地解释支持集

  • #15777: MAINT:stats.shapiro:从 shapiro 输入中减去中位数

  • #15778: MAINT:stats:从 `rv_continuous.fit` 抛出更具体的错误类型

  • #15779: CI:不要在 fork 仓库上运行 meson 测试并移除 skip 标志

  • #15782: DEPR:在 KDTree.query 中移除 k=None

  • #15783: CI:在 Azure 上固定 pytest 版本为 7.0.1

  • #15785: MAINT:stats:移除弃用的 itemfreq

  • #15786: DOC:在 integrate.quadpack 中添加积分示例

  • #15788: DOC:更新 macOS 和 Linux 贡献者文档以使用 Python 3.9

  • #15789: DOC, MAINT:移除 numpydoc 子模块

  • #15791: MAINT:在 scipy.stats 的连续分布中添加 ShapeInfo

  • #15795: DEP:从 cKDTree 中移除 n_jobs

  • #15797: scipy/_lib/boost:更新至 d8626c9d2d937abf6a38a844522714ad72e63281

  • #15799: DEP:为记录为已弃用的 extradoc 添加警告

  • #15802: DOC:示例中的导入错误

  • #15803: DOC:TransferFunctionDiscrete 示例中的错误

  • #15804: DEP:强化 optimize.minimize 对大于 1 维输入的警告消息

  • #15805: DEP:指定移除 dual_annealing 参数 'local_search_options' 的版本

  • #15809: DOC,MAINT:移除已变得无关紧要的 `quad_explain`。

  • #15810: DOC:stats.mood:仅在观测值唯一时有效

  • #15811: DOC:修复 evaluate_all_bspl 示例。

  • #15812: DOC:若干单反引号改为双反引号

  • #15813: DOC:关于 CircleCI 跳过的信息

  • #15817: MAINT:stats.fisher_exact:改进文档并修复 bug

  • #15819: DEP:文档字符串相关的弃用 (#15757)

  • #15821: DEP:为 scipy.linalg.solve 的 sym_pos 关键字添加实际的 DeprecationWarning

  • #15822: DEP:从 interpolate.PPoly.extend 中移除 `right`

  • #15823: DOC:插值教程 - 错误的矩阵填充变量

  • #15824: BUG:处理 scipy.integrate.simpson 在跨度沿...时的基本情况

  • #15825: TST:stats:在 32 位机器上标记 studentized_range moment 测试为 xfail

  • #15827: DOC:更改指定 find_peaks_cwt() SNR 定义的文档。

  • #15828: DEP:对对象数组抛出 ValueError

  • #15830: MAINT:stats:集中安置 bootstrap/permutation_test/monte_carlo_test

  • #15831: MAINT:stats.rv_generic:修复...中不必要的 `_munp` 调用

  • #15835: FIX:不正确的 boschloo p 值

  • #15837: DOC:简化 conda 命令

  • #15840: DOC:special:为 wrightomega 添加 'Examples'。

  • #15842: DOC:为 `CGS`, `GCROTMK` 和 `BiCGSTAB` 迭代...添加示例

  • #15846: DOC:添加 CSC 稀疏矩阵的效率条件并移除...

  • #15847: BUG:为 scipy.stats.brunnermunzel 添加警告

  • #15848: DOC:修复 interp2d 文档中显示的错误 Z 数组排序。

  • #15850: MAINT:sparse.linalg:在重入测试中补上 tfqmr

  • #15853: DEP:从 linalg.solve 中移除关键字 debug

  • #15855: ENH:stats.rv_continuous.expect:拆分区间以提高可靠性

  • #15867: CI:修复 linux 工作流中的 python 版本矩阵

  • #15868: CI:修复 Azure 工作流

  • #15872: DEP:从 dendrogram 中移除 mlab

  • #15874: DEP:移除 py_vq2

  • #15875: DEP:移除旧的 BSR 方法

  • #15876: DEP:移除 _ppform

  • #15881: DEP:移除 signal.windows.hanning

  • #15882: DEP:在球面 voronoi 中强制执行 radius

  • #15885: DOC:stats:阐明 truncnorm 形状参数定义

  • #15886: BUG:检查 iirfilter 参数 Wn 是否满足 Wn[0] < Wn[1]

  • #15887: DEP:从 neldermead 中移除 ftol/xtol

  • #15894: [BUG] 使 p 值与文献保持一致

  • #15895: CI:移除对 Jinja2 的固定

  • #15898: DOC:stats:修正 `wilcoxon` 行为的文档...

  • #15900: DOC:修复 _morestats 中示例的导入

  • #15905: MAINT:stats._moment:在发生灾难性抵消时发出警告

  • #15909: DEP:处理 bspline 中 ndim >1 的弃用

  • #15911: MAINT:stats:修复 `gibrat` 名称

  • #15914: MAINT:special:清理 ndtr.c 中的 C 语言风格

  • #15916: MAINT:stats:调整失败的 TestTruncnorm 的容差

  • #15917: MAINT:stats:移除对不带 `size` 参数的 `_rvs` 的支持

  • #15920: ENH:stats.mannwhitneyu:添加迭代实现

  • #15923: MAINT:stats:尝试合并警告和错误

  • #15932: MAINT:stats:在非整数处修复并彻底测试 `rv_sample`...

  • #15933: TST:test_nodata 尊重字节序

  • #15938: DOC:sparse.linalg:添加 COLAMD 的引用

  • #15939: 更新 _dual_annealing.py

  • #15945: BUG/ENH:`MultinomialQMC.random` 形状修改为 (n, pvals)

  • #15946: DEP:移除 `MultinomialQMC` 对 `QMCEngine` 的继承...

  • #15947: DOC:翻新贡献者设置指南

  • #15953: DOC:添加 meson 文档以并行使用 gcc, clang 构建并优化...

  • #15955: BUG 修复 D_IIR_forback(1,2) 的签名

  • #15959: ENH:SciPy 的开发者命令行工具 (CLI)

  • #15965: MAINT:stats:确保 `rv_continuous._fitstart` 形状...

  • #15968: BUG:修复 dev.py 的 debug 和 coverage 参数

  • #15970: BLD:为 `matfuncs_expm` 指定 `cython_lapack` 依赖

  • #15973: DOC:为 integrate.nquad 添加公式渲染。

  • #15981: ENH:optimize:添加 Newton-TFQMR 方法及 Newton-Krylov 的一些测试

  • #15982: BENCH:stats:分布内存及 CDF/PPF 往返基准测试

  • #15983: TST:sparse.linalg:为参数 `show` 添加测试

  • #15991: TST:修复 np.kron 矩阵问题。

  • #15992: DOC:修正了返回章节中的 `degrees` 参数

  • #15997: MAINT:integrate:为 QUADPACK Fortran 源码添加 `recursive` 属性

  • #15998: BUG:修复 yeojohnson 当变换后数据方差为零时的情况

  • #15999: MAINT:将 doit.db.db 添加至 gitignore

  • #16004: MAINT:将 MaximumFlowResult.residual 重命名为 flow

  • #16005: DOC:sparse.linalg:修正了...输入矩阵的描述

  • #16010: MAINT:添加检查以核实所有 `.pyi` 文件均已安装...

  • #16012: DOC:修复损坏链接并为贡献指南添加 python 头文件

  • #16015: DEP:为将 residual 弃用并改为 flow 提升版本号。

  • #16018: Doc:修复 arch linux 从源码构建的本地依赖说明

  • #16019: DOC:修复快速入门指南中的 conda 环境名称 [skip ci]

  • #16021: DOC:basinhopping 文档中的拼写错误

  • #16024: CI:取消对 pytest 和 pytest-xdist 的版本固定

  • #16026: BUG:允许 `spsolve_triangular` 处理带有...的矩阵

  • #16029: BUG:修复 meson-info 文件错误并添加更具信息量的异常

  • #16030: MAINT:stats:为 `multivariate_normal` 提供更准确的错误信息

  • #16032: FIX:向 convolve 方法的输入传递 NAN 时显示警告

  • #16037: MAINT:修复 f-strings 缺失的 `f` 前缀

  • #16042: MAINT:stats.dirichlet:修复接口不一致

  • #16044: DEV:do.py,采用 pkg pydevtool(移除了非 SciPy 特定的...

  • #16045: ENH:使用 circleci-artifacts-redirector-action

  • #16051: MAINT:对 filter_design 的若干微小改动

  • #16053: 将 fitpack 源码标记为 `recursive`

  • #16055: MAINT:将 `np.var` 替换为 `_moment(…, 2)` 以...

  • #16058: DEV:修复 meson debian python 构建

  • #16060: MAINT:允许在源代码中使用所有 Latin-1 Unicode 字母。

  • #16062: DOC:记录 `*quad` 中使用的 QUADPACK 例程

  • #16067: DEP:移除 spatial.distance.matching

  • #16070: ENH:interpolate:处理 RegularGridInterpolator 中的长度为 1 的网格轴

  • #16073: DOC:扩展 RegularGridInterpolator 文档字符串

  • #16075: CI:修复 refguidecheck 失败;取消对 Sphinx 的版本固定

  • #16077: BUG:interpolate:RGI(nan) 结果为 nan

  • #16078: DEV,BLD:在 Gitpod 构建中使用 Meson

  • #16082: BUG:refguide-check:允许多行 namedtuples

  • #16083: DOC:修正 FFTlog 函数文档中的一个符号问题

  • #16092: ENH:interpolate:添加接受降序排列点集的功能...

  • #16095: MAINT:移除旧的已过滤警告

  • #16100: MAINT:修复若干编译器警告。

  • #16104: DOC:stats:(inv)wishart 分布未检查对称性

  • #16111: BUG:修复稀疏数组的范数计算

  • #16115: MAINT:合并 `environment.yml` 和 `environment_meson.yml`

  • #16117: MAINT:stats.wilcoxon:仅在 `method='approx'` 时返回 `zstatistic`

  • #16118: 从 GH 仓库下载 openblas 二进制文件

  • #16122: CI:加速一直超时的 ci 构建

  • #16125: DOC:interpolate:修复拼写错误 “the the” -> “the”

  • #16126: DOC:interpolate:在文档字符串中细化直线网格 (rectilinear grids)

  • #16128: BUG:interpolate:修复 `previous` 的外推行为...

  • #16130: 增加 azure 上的超时时间

  • #16134: BUG:signal:修复 convolve2d 中扩展图像索引的计算。

  • #16135: MAINT:sparse.linalg:零初始猜测时的一个小改进

  • #16137: 清理 fitpack 冒烟测试

  • #16138: TST:interpolate:将 rbf 分块测试标记为 slow

  • #16141: DOC:在 signal 中将极点绘为 x,零点绘为 o

  • #16144: DEP:执行 spatial.distance 中对压缩输入向量的弃用

  • #16145: ENH:修复 signal.iircomb w0 的 bug,添加对频率的支持...

  • #16150: 为 Rotation.concatenate 添加类型信息

  • #16165: BUG:修复扩展模块初始化,需要使用 `PyMODINIT_FUNC`

  • #16166: MAINT:linalg:暴露 Cython 函数以便通用

  • #16167: ENH:调整 theilslopes 和 siegelslopes 以返回 tuple_bunch

  • #16168: BUG:special:修复当 SCIPY_XSLOW... 时运行的测试 'test_d'

  • #16173: 在 curve_fit() 文档字符串中添加使用 float64 的说明。

  • #16176: MAINT:移除模块中对 `Py_FatalError` 的可疑使用...

  • #16177: MAINT:清理 meson 文件中未使用的代码

  • #16180: DEV:do.py build。在 setup 检查时如果 intro-buildoptions.json...

  • #16181: BUG:stats:修复 multivariate_hypergeom.rvs 方法

  • #16183: ENH:简化 stats.theil/siegelslopes 中的返回名称(并修复...

  • #16184: DEP:如果在 signal.convolve2d 中 fillvalue 无法转换为输出类型,则抛出异常

  • #16185: BUG:stats:修复基于 boost 的...对 float32 输入的处理

  • #16187: BLD:在 pyproject.toml 中默认使用 Meson

  • #16194: BLD:添加一个构建选项以在使用 Meson 时强制使用 g77 ABI

  • #16198: DEP:强化 NumericalInverseHermite 中的弃用

  • #16206: CI:对 Python 3.11 也进行 NumPy main 分支测试

  • #16220: 从二元...的偏导数创建一个新的样条

  • #16223: MAINT:interpolate:将 RGI 移动到独立文件

  • #16228: TST:interpolate:将 test_spalde_scalar 移动到其他 fitpack 测试中

  • #16229: REL:DOC:修复文档 URL

  • #16230: BUG:修复扩展模块初始化,需要使用 PyMODINIT_FUNC,...

  • #16239: MAINT:tools:为 refguide-check 错误消息添加更多输出。

  • #16241: DOC:stats:更新路线图

  • #16242: BUG:使 KDTree 对 nans 鲁棒性更强。

  • #16245: DEP:执行 pinv2 的弃用

  • #16247: DOC:linalg:移除对已移除函数 pinv2 的引用

  • #16248: DOC:准备 1.9.0 发布说明

  • #16249: Refguide 检查详细绝对名称

  • #16257: DEP:弃用后续工作

  • #16259: 还原 “CI:固定 Pip 为 22.0.4 以避免 `–no-build-isolation` 的问题”

  • #16261: DEP:为 _minimize_tnc 中的 maxiter 参数添加弃用警告

  • #16264: DOC:更新 RegularGridInterpolator 文档字符串

  • #16265: DEP:弃用 spatial.distance.kulsinski

  • #16267: DOC:GitHub 上损坏的捐赠链接

  • #16273: DOC:从 refguide 中移除已弃用的函数

  • #16276: MAINT:sparse.linalg:更新若干文档字符串。

  • #16279: MAINT:stats:重写 `loguniform.fit` 以解决过参数化问题

  • #16282: BUG:special:在退出 sf_error() 前 DECREF scipy_special 对象。

  • #16283: 文档修正

  • #16287: BLD:同步 oldest-supported-numpy 中 pyproject.toml 的更改

  • #16289: MAINT:stats:移除特定于函数的警告消息

  • #16290: BLD:修复 `python setup.py install` 和 `_directmodule` 的问题

  • #16295: MAINT:在模块...中将 `import_array` 移至模块创建之前

  • #16296: DOC:REL:修复 `make dist` 缺少依赖的问题

  • #16303: MAINT:还原 multivariate_beta 的添加

  • #16304: MAINT:为损坏的安装添加更具信息量的错误提示

  • #16309: BLD:CI:修复 wheel 元数据中的问题,并添加基础 “build in...”

  • #16316: REL:更新 1.8.1 的版本切换器

  • #16321: DOC:修复弃用标签格式错误

  • #16326: REL:更新 1.9 的版本切换器

  • #16329: MAINT:1.9.x 的 git 安全垫 (security shim)

  • #16339: MAINT, TST:提高 _axis_nan_policy_test 的容差

  • #16341: BLD:更新 Pythran 要求至 0.11.0,以支持 Clang >=13

  • #16353: MAINT:1.9.0rc1 版本界限

  • #16360: MAINT, TST:静默 theilslopes 的警告

  • #16361: MAINT:SCIPY_USE_PROPACK

  • #16370: MAINT:更新 Boost 子模块以包含 Cygwin 修复

  • #16374: MAINT:更新 pydata-sphinx-theme

  • #16379: DOC:暗黑主题 css 调整

  • #16390: TST, MAINT:调整 HiGHS 的 32 位 xfails

  • #16393: MAINT:在元素级比较中使用正确类型

  • #16414: BUG:spatial:在 HalfspaceIntersection 中处理整数数组。

  • #16420: MAINT:下一轮 1.9.0 反向移植 (backports)

  • #16422: TST:修复 numpy ... 中类型转换相关警告的测试问题

  • #16427: MAINT:stats.shapiro:不要就地修改输入

  • #16429: MAINT:stats.mode:还原 gh-15423

  • #16436: DOC: optimize: 显式标记已弃用的 linprog 方法

  • #16444: BUG: 修复 messagestream.pyx 中打开临时文件失败的问题 (#8850)

  • #16451: MAINT: 更多 1.9.0 版本的向后移植

  • #16453: DOC: 审校 1.9.0-notes.rst

  • #16457: TST: 跳过 32 位 test_pdist_correlation_iris_nonC 测试

  • #16458: MAINT: 1.9.0 向后移植

  • #16473: REL: 更新 1.9.0 发布说明

  • #16482: DOC: 更新 optimize.linprog 的 Returns 章节

  • #16484: MAINT: 从 README.rst 中移除原始 HTML

  • #16485: BLD: 修复 f2py 模板解析产生的警告

  • #16493: BLD: 通过 `.gitattributes` 清理 sdist 中不需要的文件

  • #16507: REL: 对 sdist 内容进行更多微调

  • #16512: [1.9] MAINT: 在 windows 上跳过 complex128 propack 测试

  • #16514: DOC: 正确反映 windows wheel 文件的构建位置

  • #16526: MAINT: 1.9.0rc2 向后移植

  • #16530: MAINT: 修复 numpy 1.23 下 umfpack 测试失败的问题

  • #16539: MAINT: 更多 1.9.0rc2 向后移植

  • #16541: BLD: 修复构建带有符号可见性的 _lsap 时的回归问题

  • #16549: BLD: 修复 pyproject.toml 中针对 macOS arm64 过时的依赖要求

  • #16551: BLD: 修复 `special/_round.h` 中的 `__STDC_VERSION__` 检查

  • #16553: BLD: 针对过高的 Python 版本抛出带有清晰信息的错误

  • #16556: DOC: 对 1.9.0 发布说明进行微调

  • #16563: DOC: 反映 MSVC 最低工具链要求

  • #16570: MAINT: 1.9.0rc3 之前的向后移植

  • #16572: MAINT: 更新因移除 scipy-sphinx-theme 而捆绑的许可证

  • #16581: MAINT: stats: 修复偏度/峰度在空一维输入时的问题

  • #16586: MAINT: stats.truncnorm: 提高 CDF 的精度/速度

  • #16593: TST: stats: 替换 TestTruncnorm::test_moments

  • #16599: MAINT: stats.truncnorm.rvs: 提高性能

  • #16605: MAINT: stats.truncnorm: 简化其余方法

  • #16622: ENH: FIX: 更新 HiGHS 子模块以解决 MIP 不可行性...

  • #16638: DOC: 更新关于使用 Meson 构建的文档

  • #16664: MAINT: stats._axis_nan_policy: 保留掩码数组的数据类型 (dtype)...

  • #16671: BLD: 为 1.9.0 更新 `meson` 和 `meson-python` 版本...

  • #16684: MAINT: optimize.linprog: 确保 integrality 可以是一个数组

  • #16688: DOC: 几处 mailmap 更新

  • #16719: MAINT: stats: 规避 Cython bug。

  • #16721: MAINT: stats.monte_carlo_test: 使用 p 值的有偏估计