SciPy 1.4.0 发行说明#
SciPy 1.4.0 是 6 个月辛勤工作的结晶。它包含许多新功能、大量错误修复、改进的测试覆盖率和更好的文档。此版本中有许多弃用和 API 更改,如下所述。鼓励所有用户升级到此版本,因为其中包含大量错误修复和优化。在升级之前,我们建议用户检查他们自己的代码是否使用已弃用的 SciPy 功能(为此,请使用 python -Wd
运行您的代码并检查 DeprecationWarning
s)。我们的开发重点现在将转移到 1.4.x 分支上的错误修复版本,以及在主分支上添加新功能。
此版本需要 Python 3.5+ 和 NumPy >=1.13.3 (对于 Python 3.5, 3.6), >=1.14.5 (对于 Python 3.7), >= 1.17.3 (对于 Python 3.8)
要在 PyPy 上运行,需要 PyPy3 6.0+ 和 NumPy 1.15.0。
此版本亮点#
一个新的子模块
scipy.fft
,现在取代了scipy.fftpack
;这意味着支持long double
转换、更快的维度转换、改进的算法时间复杂度、释放全局解释器锁以及控制线程行为在
scipy.sparse.linalg
中支持pydata/sparse
数组大幅改进了几个
scipy.special
函数的文档和功能,并添加了一些新内容广义逆高斯分布已添加到
scipy.stats
scipy.sparse.csgraph.maximum_flow
中 Edmonds-Karp 算法的实现scipy.spatial.SphericalVoronoi
现在支持 n 维输入,具有线性内存复杂性、改进的性能并支持单半球生成器
新功能#
基础设施#
现在可以使用 runtests.py --doc
构建文档
现在可以在 scipy/scipy-dev
存储库中找到 Dockerfile
,以方便开始 SciPy 开发。
scipy.constants
改进#
scipy.constants
已使用 CODATA 2018 常量进行更新。
scipy.fft
添加#
scipy.fft
是一个新的子模块,它取代了 scipy.fftpack
子模块。在大多数情况下,它是 numpy.fft
和 scipy.fftpack
的直接替代品。但有一些重要的区别,scipy.fft
: - 使用 NumPy 的实数转换约定 (rfft
)。这意味着返回值是一个复数数组,是完整 fft
输出的一半大小。这与 fftpack
的输出不同,后者返回一个表示复数组件打包在一起的实数数组。 - 逆实数到实数的转换 (idct
和 idst
) 以与 ifft
相同的方式为 norm=None
进行标准化。这意味着对于所有 norm 模式,恒等式 idct(dct(x)) == x
现在为 True
。 - 不包括来自 fftpack
的卷积或伪微分算子。
此子模块基于 pypocketfft
库,由 pocketfft
的作者开发,NumPy 最近也采用了该库。pypocketfft
比 fortran FFTPACK
具有许多优势: - 支持长双精度 (np.longfloat
) 转换。 - 使用矢量化进行更快的维度转换 - Bluestein 算法消除了 FFTPACK
的最坏情况 O(n^2)
复杂度 - 全局解释器锁 (GIL
) 在转换期间释放 - 可选的维度转换多线程通过 workers
参数
请注意,scipy.fftpack
尚未弃用,将继续维护,但现在被认为是旧版。建议新代码尽可能使用 scipy.fft
。
scipy.fftpack
改进#
scipy.fftpack
现在使用 pypocketfft 执行其 FFT,从而提供与上述 scipy.fft 列出的相同的速度和准确性优势,但没有改进的 API。
scipy.integrate
改进#
函数 scipy.integrate.solve_ivp
现在具有 args
参数。这允许传递给该函数的用户定义的函数具有额外的参数,而无需为它们创建包装函数或 lambda 表达式。
scipy.integrate.solve_ivp
现在可以返回一个 y_events
属性,表示 ODE 在事件发生时间的解
实现了新的 OdeSolver
— DOP853
。这是一种高阶显式 Runge-Kutta 方法,最初在 Fortran 中实现。现在我们提供了一个纯 Python 实现,可以通过 solve_ivp
及其所有功能使用。
当使用加权被积函数指定中断点时,scipy.integrate.quad
提供更好的用户反馈。
scipy.integrate.quad_vec
现在可用于向量值函数的通用积分
scipy.interpolate
改进#
scipy.interpolate.pade
现在可以优雅地处理复数输入数据
scipy.interpolate.Rbf
现在可以插值多维函数
scipy.io
改进#
scipy.io.wavfile.read
现在可以从具有格式错误的标头的 WAV 文件读取数据,类似于其他现代 WAV 文件解析器
现在 scipy.io.FortranFile
拥有一组扩展的 Exception
类,用于处理格式不正确的文件
scipy.linalg
改进#
函数 scipy.linalg.subspace_angles(A, B)
现在可以为复数值矩阵给出正确的结果。在此之前,该函数仅返回实数值矩阵的正确值。
scipy.linalg.norm
的新布尔关键字参数 check_finite
;用于检查输入矩阵是否仅包含有限数。禁用此选项可能会提高性能,但如果输入包含无穷大或 NaN,则可能会导致问题(崩溃,无法终止)。
scipy.linalg.solve_triangular
改进了对 C 顺序三角矩阵的性能
已为 ?geequ
, ?geequb
, ?syequb
, 和 ?heequb
添加了 LAPACK
包装器
由于涉及通过 _compute_lwork
的 LAPACK 例程的操作中的内部优化,可能会观察到一些性能改进。对于小型数组上的操作尤其如此。
现在可以在 scipy.linalg.lapack
中使用块 QR
包装器
scipy.ndimage
改进#
scipy.optimize
改进#
现在可以使用线性约束和非线性约束与 scipy.optimize.differential_evolution
。
scipy.optimize.linear_sum_assignment
已在 C++ 中重新编写以提高性能,现在允许输入成本为无穷大。
添加了一个 ScalarFunction.fun_and_grad
方法,用于方便地同时检索函数和梯度计算
scipy.optimize.minimize
BFGS
方法通过避免在某些情况下重复评估来提高性能
当目标函数返回数组而不是标量时,会提供更好的用户反馈。
scipy.signal
改进#
添加了一个新函数来计算使用重叠相加法的卷积,命名为 scipy.signal.oaconvolve
。与 scipy.signal.fftconvolve
类似,此函数支持指定要执行卷积的维度。
scipy.signal.cwt 现在支持复数小波。
choose_conv_method
的实现已更新以反映新的 FFT 实现。此外,性能得到了显着提高(边缘情况下有相当大的改进)。
函数 upfirdn
现在有一个 mode
关键字参数,可用于选择在信号边界处使用的信号扩展模式。这些模式也可用于通过新添加的 padtype
参数在 resample_poly
中使用。
scipy.signal.sosfilt
现在受益于 Cython 代码,以提高性能
scipy.signal.resample
在可能的情况下利用 rfft
应该更有效
scipy.sparse
改进#
现在可以在 scipy.sparse.linalg.svds
中使用 LOBPCG 方法。
除了 rmatvec
之外,scipy.sparse.linalg.LinearOperator
现在支持用于伴随矩阵-矩阵乘法的操作 rmatmat
。
多个稳定性更新使得 scipy.sparse.linalg.lobpcg
中对称和 Hermitian 特征值问题的 LOBPCG 特征值求解器支持 float32。
最大流问题的求解器已添加为 scipy.sparse.csgraph.maximum_flow
。
scipy.sparse.csgraph.maximum_bipartite_matching
现在允许非正方形输入,不再需要存在完美匹配,并且提高了性能。
scipy.sparse.lil_matrix
转换现在在某些情况下表现更好
在 scipy.sparse.linalg
中,基本支持 pydata/sparse
数组
scipy.sparse.linalg.spsolve_triangular
现在支持 unit_diagonal
参数,以提高其密集对应物 scipy.linalg.solve_triangular
的调用签名相似性
assertAlmostEqual
现在可以与稀疏矩阵一起使用,这些稀疏矩阵已添加对 __round__
的支持
scipy.spatial
改进#
捆绑的 Qhull 库已升级到 2019.1 版本,修复了多个问题。不再将特定于 Scipy 的补丁应用于它。
scipy.spatial.SphericalVoronoi
现在具有线性内存复杂性,提高了性能,并支持单半球生成器。还增加了对处理位于大圆弧(测地线输入)上的生成器以及 n 维生成器的支持。
scipy.spatial.transform.Rotation
现在包括用于计算平均旋转、生成 3D 旋转群以及减少具有旋转对称性的旋转的函数。
scipy.spatial.transform.Slerp
现在可以用标量参数调用
scipy.spatial.voronoi_plot_2d
现在支持最远点 Voronoi 图
scipy.spatial.Delaunay
和 scipy.spatial.Voronoi
现在具有用于跟踪它们是否是最远点图的属性
scipy.special
改进#
Voigt 轮廓已添加为 scipy.special.voigt_profile
。
已为 Wright Omega 函数 (scipy.special.wrightomega
) 添加了实数调度。
已添加黎曼 zeta 函数的解析延拓。(黎曼 zeta 函数是 scipy.special.zeta
的单参数变体。)
第一类完全椭圆积分 (scipy.special.ellipk
) 现在可在 scipy.special.cython_special
中使用。
已提高了 scipy.special.hyp1f1
对于实数参数的准确性。
许多函数的文档已得到改进。
scipy.stats
改进#
scipy.stats.multiscale_graphcorr
作为一种独立性测试添加,该测试在高维和非线性数据集上运行。与其他 scipy.stats
测试相比,它具有更高的统计功效,同时是唯一在多元数据上运行的测试。
已添加广义逆高斯分布 (scipy.stats.geninvgauss
)。
现在可以通过提供先前对该函数的调用的结果来有效地重用具有新值的 scipy.stats.binned_statistic_dd
。
scipy.stats.hmean
现在可以更优雅地处理具有零的输入。
beta-binomial 分布现在可在 scipy.stats.betabinom
中使用。
scipy.stats.zscore
, scipy.stats.circmean
, scipy.stats.circstd
, 和 scipy.stats.circvar
现在支持 nan_policy
参数,以增强对 NaN
值的处理
scipy.stats.entropy
现在接受 axis
参数
scipy.stats.gaussian_kde.resample
现在接受 seed
参数来增强可重复性
由于改进的缓存使用,scipy.stats.kendalltau
性能得到提高,尤其是对于大型输入
scipy.stats.truncnorm
分布已重写以支持更宽的尾部
已弃用的功能#
scipy
弃用#
不建议支持通过根 SciPy 命名空间公开的 NumPy 函数,并且将在 2.0.0 中删除。例如,如果您使用 scipy.rand
或 scipy.diag
,则应将代码更改为直接使用 numpy.random.default_rng
或 numpy.diag
。它们仍然在当前继续的 Scipy 1.x 版本系列中可用。
此规则的例外是将 scipy.fft
用作函数——scipy.fft
现在只能用作模块,因此调用 scipy.fft(...)
的功能将在 SciPy 1.5.0 中删除。
在 scipy.spatial.Rotation 方法中,from_dcm
, as_dcm
分别重命名为 from_matrix
, as_matrix
。旧名称将在 SciPy 1.6.0 中删除。
方法 Rotation.match_vectors
已被弃用,取而代之的是 Rotation.align_vectors
,它为相同的功能提供了更符合逻辑和通用的 API。旧方法将在 SciPy 1.6.0 中删除。
向后不兼容的更改#
scipy.special
更改#
已删除已弃用的函数 hyp2f0
, hyp1f2
, 和 hyp3f0
。
已删除已弃用的函数 bessel_diff_formula
。
函数 i0
不再在 numpy.dual
中注册,因此无论是否导入 scipy.special
,numpy.dual.i0
都将无条件地引用 NumPy 版本。
函数 expn
已更改为在其定义域之外(x, n < 0
)返回 nan
,而不是 inf
。
scipy.sparse
更改#
如果形状不是二维的,稀疏矩阵重塑现在会引发错误,而不是猜测其含义。现在的行为与 SciPy 1.1.0 之前的行为相同。
当索引超出范围时,CSR
和 CSC
稀疏矩阵类现在应返回相同类型的空矩阵。以前,对于某些 SciPy 版本,这会引发 IndexError
。此更改的主要动机是与 ndarray
和 numpy.matrix
语义更加一致。
scipy.signal
更改#
scipy.signal.resample
长度为 1 的信号输入的行为已修复为输出一个恒定(DC)值,而不是脉冲,这与 FFT 方法中的信号周期性假设一致。
scipy.signal.cwt 现在执行小波数据的复共轭和时间反转,这是对时间不对称小波的向后不兼容的错误修复。
scipy.stats
变更#
添加了scipy.stats.loguniform
,并提供了更好的文档(作为scipy.stats.reciprocal
的别名)。 loguniform
生成在对数空间中等概率的随机变量; 例如,如果使用loguniform(10 ** 0, 10 ** 2).rvs()
,则1
,10
和100
都具有相同的可能性。
其他变更#
scipy.integrate.solve_ivp
的LSODA
方法现在可以正确检测刚性问题。
scipy.spatial.cKDTree
现在接受并正确处理空输入数据
scipy.stats.binned_statistic_dd
现在以数值稳定的方式计算标准偏差统计量。
如果输入数据包含np.nan
或np.inf
,scipy.stats.binned_statistic_dd
现在会引发错误。 类似地,在scipy.stats
中,如果输入数据包含np.nan
或np.inf
的任何实例,现在所有连续分布的.fit()
方法都会引发错误。
为 1.4.0 关闭的 Issue#
#1255: Scipy.sparse.linalg gmres 的 maxiter 损坏,此外…
#1301: 合并来自 interpolate 和 integrate 包的 multipack.h…
#1739: 单精度 FFT 精度不足。 (Trac #1212)
#1795: stats test_distributions.py: 替换旧的模糊测试 (Trac #1269)
#2233: fftpack 与大型数组的段错误 (Trac #1714)
#2434: rmatmat 和线性运算符对象的复杂性
#2477: stats.truncnorm.rvs() 对于负数未给出对称结果…
#2629: FFTpack 在非 2 的幂时速度慢得令人无法接受
#2883: scipy.interpolate.splrep 中的 UnboundLocalError
#2956: 功能请求:stats.entropy 函数的轴参数
#3528: test_djbfft 上的段错误(可能与 MKL 相关?)
#3793: cwt 还应返回复杂数组
#4464: TST:residue/residuez/invres/invresz 没有任何测试
#4561: BUG:tf filter 在 residuez 中带有尾随和前导零
#4669: 重写 sosfilt 以在输入上进行单循环?
#5040: BUG:(c)KDTrees 的空数据处理
#5112: boxcox 变换边缘案例可能需要更多关注
#5441: scipy.stats.ncx2 在 nc=0 时失败
#5502: optimize.curve_fit 中未处理 args 关键字
#6484: Qhull 段错误
#6900: 具有无限权重的 linear_sum_assignment
#6966: 超几何函数文档缺失
#6999: 在压缩的 loadmat() 中可能出现误报损坏检查
#7018: 需要广播的 ydata 导致 curve_fit 无法计算…
#7140: Windows 文档的问题
#7327: interpolate.ndgriddata.griddata 导致 Python 崩溃而不是…
#7396: MatrixLinearOperator 实现了 _adjoint(),但未实现 _transpose()
#7400: BUG(?):special:factorial 和 factorial2 返回 0 维…
#7434: scipy.stats 连续分布的测试缺少 25 个分布
#7491: 几个 scipy.stats 分布(fisk、burr、burr12、f)返回…
#7759: 大样本的 stats.kruskal 中的溢出
#7906: scipy.interpolate.UnivariateSpline.integral 的错误结果…
#8165: ENH:匹配 R 的 hmean 功能
#8417: optimimze.minimize(method=’L-BFGS-B’,options={‘disp’: True})…
#8535: UnivariateSpline 中严格增加的要求
#8815: [BUG] GMRES:只有在 callback 时才会增加迭代次数…
#9207: scipy.linalg.solve_triangular 在 scipy.linalg.lu_factor 之后的速度
#9275: 新功能:除了 ARPACK 之外,在 svds 中添加 LOBPCG 求解器
#9403: 可以扩展 truncnorm.logpdf 的范围
#9429: gaussian_kde 不适用于 numpy 矩阵
#9515: ndimage 实现依赖于未定义的行为
#9643: arpack 按升序返回奇异值
#9669: DOC:matthew-brett/build-openblas 已停用
#9852: scipy.spatial.ConvexHull 以代码 134 退出,free():无效的…
#9902: scipy.stats.truncnorm 二阶矩可能错误
#9943: shgo 中的自定义采样方法不起作用
#9947: DOC:`nan_policy=’propagate` 的错误文档…
#9994: BUG:sparse:reshape 方法允许包含任意形状…
#10036: 官方 Nelder mead 教程使用 xtol 而不是 xatol,这…
#10078: 当目标函数时,可能会获得更好的错误消息…
#10092: truncnorm.rvs 中的溢出
#10121: 一个小小的拼写错误
#10126: binned_statistic 中不准确的 std 实现
#10161: 文档 scipy.special.modstruve 中的错误
#10195: 具有“const”外推的样条曲线的导数也进行了外推…
#10206: 使用 scipy 1.3 索引稀疏矩阵
#10236: scipy.optimize 函数的类型不匹配的非描述性错误…
#10258: 如果提供猜测,LOBPCG 收敛失败
#10262: 距离矩阵缺少 dtype 检查/警告
#10271: BUG:优化在 wheels 上失败
#10277: scipy.special.zeta(0) = NAN
#10292: DOC/REL:发行说明的某些部分未正确嵌套。
#10300: 当…时,scipy.stats.rv_continuous.fit 引发空 RuntimeError
#10319: scipy.integrate.solve_ivp 中的事件:如何设置事件…
#10323: 添加更多低级 LAPACK 包装器
#10360: firwin2 无意中修改了输入,可能导致未定义…
#10388: BLD:TestHerd::test_hetrd 使用 Python-dbg 进行核心转储
#10395: 删除有关缩放输出形状的警告
#10403: DOC:scipy.signal.resample 忽略 t 参数
#10421: Yeo-Johnson 幂变换在整数输入数据时失败
#10422: BUG:scipy.fft 不支持多处理
#10427: ENH:应更新卷积数
#10444: BUG:scipy.spatial.transform.Rotation.match_vectors 返回不正确的…
#10488: ENH:scipy.fft 的 DCT/DST
#10501: BUG:scipy.spatial.HalfspaceIntersection 无法正常工作
#10514: BUG:cKDTree GIL 处理不正确
#10535: TST:主分支 CI 失败
#10588: 当 axes=None 且 shape…时,scipy.fft 和 numpy.fft 不一致
#10628: Scipy python>3.6 Windows wheels 未附带 msvcp*.dll
#10733: DOC/BUG: min_only 的结果与文档不符
#10774: min_only=true 时,djiistra 在重复索引下进入无限循环
#10775: 给定 NaN 时,Radau 中出现 UnboundLocalError
#10835: io.wavfile.read 不必要地为错误的 wav 头部引发错误
#10838: scipy.linalg.lu_factor 的文档错误
#10875: DOC: 图形指南(使用 TikZ)
#10880: 在使用 trust-constr 方法的 minimize 中设置 verbose > 2 导致…
#10887: scipy.signal.signaltools._fftconv_faster 有不正确的估计
#10948: gammainc(0,x) = nan 但应为 1, gammaincc(0,x) = nan 但…
#10952: TestQRdelete_F.test_delete_last_p_col 测试失败
#10968: API: 在 Rotation 中将 normalized=False 更改为 normalize=True
#10987: shgo 三角剖分中的内存泄漏
#10991: 运行 openBlas 期间出错,可能缺少一个步骤
#11033: python 3.8 的 osx 上出现死锁
#11041: TestTf2zpk.test_simple 的 wheel 构建中测试失败
#11089: scipy.stats 中的回归,其中分布将不接受 loc 和 scale 参数
#11100: BUG: multiscale_graphcorr 随机状态播种和并行使用
#11121: 调用
scipy.interpolate.splprep
增加 RAM 使用量。#11125: BUG: 当使用切片起始索引 > 停止索引切片 CSR 或 CSC 稀疏矩阵时发生段错误
#11198: BUG: 稀疏 eigs (arpack) 移位反演会丢弃一些 k 的最小特征值
针对 1.4.0 的拉取请求#
#4591: BUG, TST: scipy.signal.residue 的几个问题
#6629: ENH: 稀疏:在初始化时规范化
#7076: ENH: 向 scipy.signal.cwt 添加复小波支持。
#8681: ENH 将广义逆高斯分布添加到 scipy.stats
#9064: BUG/ENH: 将默认的 _transpose 添加到 LinearOperator 中。修复…
#9215: ENH: 对大型多维数据进行 Rbf 插值
#9311: ENH: 在 scipy.special 中添加 voigt。
#9642: ENH: integrate:用于向量值函数的 quad()
#9679: DOC: 扩展 exponweib 分布的文档字符串
#9684: TST: 添加 ppc64le ci 测试
#9800: WIP : ENH: 重构 _hungarian.py 以提高速度并添加最小化/最大化…
#9847: DOC: 更改 integrate 教程以使用 solve_ivp 而不是 odeint
#9876: ENH: 尽可能在重采样中使用 rfft
#9998: BUG: 调用 sparse 时不要删除 1s:reshape 方法 #9994
#10002: ENH: 为差分进化添加约束
#10098: ENH: integrate:将 args 参数添加到 solve_ivp。
#10099: DOC: 为 linprog unknown_options 添加缺少的文档
#10104: BUG: 重写 stats.truncnorm 分布。
#10105: MAINT 提高 scipy.stats 中 rvs_ratio_uniforms 的效率
#10107: TST: dual_annealing 设置种子
#10108: ENH: stats:改进 kendall_tau 缓存使用
#10110: MAINT: _lib:修复构建警告。
#10114: FIX: 仅在 minimizer (shgo) 支持时才打印边界
#10115: TST: 为 lsq_linear 添加一个具有几乎奇异的设计矩阵的测试
#10118: MAINT: 修复 scipy.stats 中的 rdist 方法
#10119: MAINT: 改进 scipy.stats 中 randint 的 rvs
#10127: 修复记录数组字段名称中的拼写错误(spatial-ckdtree-sparse_distance…
#10130: MAINT: ndimage:修复一些编译器警告。
#10131: DOC: 注意 1.4.0 版本中的 solve_ivp args 增强功能…
#10133: MAINT: 在 scipy.stats 中为 semicircular 添加 rvs
#10138: BUG: special:ellip_harm 的无效参数可能会导致 Python 崩溃。
#10139: MAINT: spatial:修复文件 distance_wrap.c 中的一些编译器警告。
#10140: ENH: 在 RuntimeWarning except 子句中添加 NaN 处理
#10142: DOC: scipy.special.comb 的返回值
#10143: MAINT: 放宽 linprog tol
#10152: BUG: 修复 shgo 的自定义采样输入,添加 unittest
#10154: MAINT: 添加力矩并改进 scipy.stats 中 mielke 的文档
#10158: Issue #6999: 在检查读取的字节之前读取 zlib 校验和。
#10166: BUG: 正确处理曲线拟合 pcov 计算中的广播 ydata。
#10167: DOC: special:将缺少的因子“i”添加到“modstruve”文档字符串
#10168: MAINT: stats:修复不正确的注释。
#10169: ENH: optimize:阐明目标函数返回时的错误…
#10172: DEV: 在将 –parallel 标志传递给…时并行运行测试
#10173: ENH: 实现 DOP853 ODE 积分器
#10176: 修复拼写错误
#10182: TST: 修复 stats.pearsonr 的测试问题
#10184: MAINT: stats:简化 zmap 和 zscore(我们现在可以使用 keepdims)。
#10191: DOC: 修复 scipy.spatial 模块文档字符串中的格式问题。
#10193: DOC: 更新了 optimize.nnls 的文档字符串
#10198: DOC, ENH: special:使 `hyp2f1` 引用更具体
#10202: DOC: 将 DST 和 DCT 定义格式化为 latex 公式
#10207: BUG: 压缩矩阵索引应返回标量
#10210: DOC: 更新 connected_components 中 connection='weak' 的文档
#10225: DOC: 阐明“优化”中旧函数的新接口
#10231: DOC, MAINT: gpg2 更新为发布文档/人行道
#10235: LICENSE: 将许可文件拆分为标准 BSD 3 条款和捆绑条款。
#10238: ENH: 使用 pocketfft 添加新的 scipy.fft 模块
#10243: BUG: 修复 ARFF 读取器回归问题,其中包含带引号的值。
#10248: DOC: 更新 README 文件
#10255: CI: 提升 OpenBLAS 以匹配 wheels
#10264: TST: 为 stats.tvar 添加带有未展平数组的测试
#10280: MAINT: stats: 对 sqrt(2/PI) 使用常量值。
#10286: 开发文档大修
#10290: MAINT: 弃用 SciPy 根目录中的 NumPy 函数
#10291: FIX: 在检查可用性时避免导入 xdist
#10295: 在 __odrpack.c 中禁用已弃用的 Numpy API
#10296: ENH: 线性分配问题的 C++ 扩展
#10298: ENH: 使 pade 函数适用于复杂输入
#10301: DOC: 修复 stats.anderson_ksamp 中的临界值显着性水平
#10307: Minkowski 距离类型修复 (issue #10262)
#10309: BUG: 将 jac=None 直接传递给 lsoda
#10310: BUG: interpolate:UnivariateSpline.derivative.ext 为 'zeros'…
#10312: FIX: 修复注释中的拼写错误
#10314: scipy.spatial 增强请求
#10315: DOC: 更新集成教程以解决 solve_ivp
#10318: DOC: 更新 PPoly.solve 的示例
#10333: TST: 为 stats.tvar 添加带有未展平数组的测试
#10334: MAINT: special: 删除已弃用的 `hyp2f0`、`hyp1f2` 和…
#10336: BUG: linalg/interpolative: 修复 interp_decomp 修改输入
#10341: BUG: sparse.linalg/gmres:弃用回调对语义的影响…
#10344: DOC: 改进数学公式的措辞
#10345: ENH: scipy.linalg.lapack 的平铺 QR 包装器
#10350: MAINT: linalg: 在 linalg.dft 测试中使用新的 fft 子包…
#10351: BUG: 修复直方图中不稳定的标准差计算
#10353: Bug: interpolate.NearestNDInterpolator (issue #10352)
#10357: DOC: linalg: 在 dft 中引用 scipy.fft.fft(而不是 fftpack)…
#10359: DOC: 现在已合并 scipy.fft,请更新路线图
#10361: ENH: 在 scipy.signal 中首选 scipy.fft 而不是 scipy.fftpack
#10371: DOC: 对 fft 文档的调整
#10372: DOC: 修复拼写错误
#10377: TST, MAINT: 针对 pytest 5.0 的调整
#10378: ENH: _lib:允许在 check_random_state 中使用新的 np.random.Generator
#10379: BUG: sparse: 将可写性设置为与 numpy>=1.17 向后兼容
#10381: BUG: 修复 gh-7491,fisk/burr/burr12/f 分布的 x=0 处的 pdf。
#10387: ENH: optimize/bfgs:不要在初始点处评估两次…
#10392: [DOC] 为 _binned_statistic_dd 添加一个示例
#10396: 删除有关缩放输出形状的警告
#10397: ENH: 将 check_finite 添加到 sp.linalg.norm
#10399: ENH: 将 __round__ 方法添加到稀疏矩阵
#10407: MAINT: 从 install_requires 中删除 pybind11,它只是构建时…
#10408: TST: 使用 pytest.raises,而不是 numpy assert_raises
#10409: CI: 在 Travis 上卸载 nose
#10410: [ENH] 当 nc=0 时,ncx2 分配到 chi2
#10411: TST: optimize:测试应使用 assert_allclose 进行 fp 比较
#10414: DOC: 将 pybind11 添加到快速入门指南的其他部分
#10417: DOC: special: 不要用 `[+]` 标记非 ufunc
#10423: FIX: 使用 pybind11::isinstace 检查数组 dtypes
#10424: DOC: 为 ttest_ind_from_stats 的二进制数据添加 doctest 示例
#10425: ENH: 将缺少的 Hermitian 变换添加到 scipy.fft
#10426: MAINT: 修复文档构建错误
#10431: 更新 AIX 的 numpy 版本
#10433: MAINT: 对统计信息的小修复
#10434: BUG: special: 使 `ndtri` 在定义域之外返回 NaN
#10435: BUG: 允许 scipy.stats.yeojohnson 中使用整数输入数据
#10438: [DOC] 添加 kurtosis 的示例
#10440: ENH: special: 使 `ellipk` 成为 ufunc
#10443: MAINT: ndimage: malloc 失败检查
#10447: BLD: 将测试编译的输出重定向到临时目录
#10451: MAINT: signal: malloc 失败检查
#10455: BUG: special: 修复负 `x` 的 `hyperu` 值
#10456: DOC: 添加注释,说明 lbfgsb.f 中对 dcsrch.f 的调用
#10457: BUG: 允许 ckdtree 接受空数据输入
#10459: BUG:TST: 安全计算 lwork
#10460: [DOC] 添加 entropy 的示例
#10461: DOC: 快速入门指南更新
#10462: TST: special: 仅显示失败测试点的最大 atol/rtol
#10465: BUG: 正确对齐 fft 输入
#10467: ENH: spatial.SphericalVoronoi 中更低内存的重复生成器检查
#10470: ENH: 规范化 scipy.fft 中的逆 DCT/DST
#10472: BENCH: 调整缓慢 setup_cache 的超时时间
#10475: CI: 包含 Travis-ci 的 python debug
#10476: TST: special: 使用 `__tracebackhide__` 以获得更好的错误消息
#10477: ENH: spatial.SphericalVoronoi 中更快的区域构建
#10479: BUG: stats: 修复分布的 fit 方法的一些问题。
#10480: 在 _distn_infrastructure.py 的 fit() 方法中添加 RuntimeError
#10481: BENCH, MAINT: wheel_cache_size 已重命名为 build_cache_size
#10494: ENH: spatial.SphericalVoronoi 中更快的 circumcenter 计算
#10500: Splrep _curfit_cache 全局变量错误修复
#10503: BUG: spatial/qhull: 从...获取 HalfspaceIntersection.dual_points
#10506: DOC: interp2d,注意最近邻外推
#10507: MAINT: 移除 fortan fftpack 库,支持 pypocketfft
#10508: TST: 修复循环导入测试中的一个错误。
#10509: MAINT: 将 _build_utils 设置为子包
#10516: BUG: 在 cKDTree 中使用 nogil 上下文
#10517: ENH: fftconvolve 不应 FFT 可广播轴
#10518: ENH: 加速 fftconvolve
#10520: DOC: 废弃功能和后向兼容性的正确 .rst 格式...
#10523: DOC: 改进 scipy.signal.resample 文档
#10524: ENH: 将 MGC 添加到 scipy.stats
#10525: [ENH] 当 nc=0 时,ncx2.ppf 分派到 chi2
#10526: DOC: 澄清 laplacian 归一化
#10528: API: 将 scipy.fft DCT/DST 形状参数重命名为 s
#10531: BUG: 修复 spatial.transform.rotation.match_vectors 中的不正确旋转
#10533: [DOC] 添加 winsorize 函数的示例
#10539: MAINT: special: 不要使用 `numpy.dual` 注册 `i0`
#10540: MAINT: 修复 Travis 和 Circle
#10542: MAINT: interpolate: 使用 cython_lapack
#10547: 功能请求。将最远站点 Voronoi 图添加到 scipy.spatial.plotutils。
#10549: [BUG] 当 inclusive=False 时修复 trimr 中的错误
#10552: 添加 scipy.signal.upfirdn 信号扩展模式
#10555: MAINT: special: 将 `c_misc` 移动到 Cephes
#10556: [DOC] 添加 trima 的示例
#10562: [DOC] 修复修剪后的三字符串,以便 __doc__ 可以显示...
#10563: 改进 least_squares 对不匹配形状的错误消息
#10564: ENH: linalg: 记忆 get_lapack/blas_funcs 以加速它
#10566: ENH: 添加最大流问题的求解器实现
#10567: BUG: spatial: 使用 c++11 构造来获取向量的开头...
#10568: DOC: special: 对 `zetac` 文档字符串进行小调整
#10571: [ENH] Gaussian_kde 可以接受矩阵数据集
#10574: ENH: linalg: 通过避免 numpy 构造来加速 _compute_lwork
#10582: 修复捆绑库中拼写错误的拼写错误已恢复
#10583: ENH: special: 添加黎曼 zeta 的解析延拓
#10584: MAINT: special: 清理 `special.__all__`
#10586: BUG: 多维 scipy.fft 函数应该接受 's' 而不是...
#10587: BUG: integrate/lsoda: 永远不要中止运行,而是设置错误 istate
#10594: API: 当给出 s 但未给出...时,复制 numpy 的 fftn 行为
#10599: DOC: dev: 更新文档与 github pull request 工作流程...
#10603: MAINT: 移除安装程序脚本
#10604: MAINT: 在许多...中将 c*np.ones(…) 更改为 np.full(…, c, …)
#10608: 单变量样条曲线应要求 x 严格递增...
#10613: ENH: 为 gaussian_kde.resample 添加种子选项
#10614: ENH: 将并行计算添加到 scipy.fft
#10615: MAINT: interpolate: 移除未使用的头文件
#10616: MAINT: 清理 32 位平台 xfail 标记
#10618: BENCH: 将 'trust-constr' 添加到最小化基准测试
#10621: [MRG] lobpcg 中的多个稳定性更新
#10622: MAINT: 正向移植 1.3.1 发行说明
#10624: DOC: stats: 修复 'support' 的拼写。
#10627: DOC: stats: 添加 alpha 分布的引用。
#10629: MAINT: special: 避免在负...的 `zeta` 中溢出更长时间
#10630: TST: GH10271, 放宽测试断言,修复 #10271
#10631: DOC: nelder-mean 使用 xatol 修复 #10036
#10633: BUG: interpolate: 当两个限制都为...时,integral(a, b) 应为零
#10635: DOC: special: 完成超几何函数文档
#10636: BUG: special: 当它快速收敛时,使用 `hyp1f1` 的级数
#10641: ENH: 允许匹配一般二分图
#10643: ENH: scipy.sparse.linalg.spsolve 三角单位对角线
#10650: ENH: Cythonize sosfilt
#10654: DOC: 表条目的垂直对齐
#10655: ENH: 用于 scipy 开发的 Dockerfile
#10660: TST: 清理 scipy.stats 中 rvs 的测试
#10664: 抛出 binned_statistic_dd() 的非有限输入错误
#10665: DOC: special: 改进 `gamma` 和 `gammasgn` 的文档字符串
#10669: TST: 更新 scipy.fft 真实变换测试
#10670: DOC: 澄清 scipy.signal.butter 的文档和错误消息
#10672: ENH: 在 solve_ivp 中使用事件时返回解决方案属性
#10675: MAINT: special: 为 `iv` 参数添加显式 NaN 检查
#10679: DOC: special: 添加 `beta` 函数的文档
#10681: TST: sparse.linalg: 修复 arnoldi 测试种子
#10682: DOC: special: 添加 `betainc` 函数的文档
#10684: TST: special: `test_hyperu_around_0` 需要 Mpmath 1.1.0
#10686: FIX: sphinx isattributedescriptor 在 sphinx 中不可用...
#10687: DOC: 添加了 @andyfaff 的 Docker 快速入门指南
#10689: DOC: special: 澄清...的参数/返回部分的格式
#10690: DOC: special: 改进不完整 gamma 函数的文档字符串
#10692: ENH: `spatial.SphericalVoronoi` 中的更高维度输入
#10694: ENH: ScalarFunction.fun_and_grad
#10698: DOC: special: 添加 `betaincinv` 的文档
#10699: MAINT: 移除时间打印 lbfgsb 修复 #8417
#10701: TST, MAINT: 将 OpenBLAS 升级到 0.3.7 stable
#10702: DOC: 阐明迭代消耗多个函数调用
#10703: DOC: iprint doc lbfgsb 关闭 #5482
#10708: TST: gh1758 中建议的测试
#10710: ENH: 在 `stats` 中的 circ 函数中添加了 nan_policy
#10712: ENH: 将 axis 参数添加到 stats.entropy
#10714: DOC: 格式修复 rv_continuous.expect 文档
#10715: DOC: BLD: 更新 python 版本的 doc Makefile;添加 scipy 版本...
#10717: MAINT: 使 doc/Makefile 现代化
#10719: 启用设置 minres 初始向量
#10720: DOC: 在 `stats.binned_statistic_dd` 的文档构建中消除随机警告
#10724: DEV: 将 doc 选项添加到 runtests.py
#10728: MAINT: 摆脱 lobpcg 测试留下的 gramA、gramB 文本文件...
#10732: DOC: 将 min_only 添加到 Dijkstra 算法的文档字符串
#10734: DOC: 拼写最短路径中源和目标之间的差异...
#10735: Python 4 的修复
#10739: BUG: optimize/slsqp: 处理奇异 BFGS 更新
#10741: ENH: ?geequ, ?geequb, ?syequb, ?heequb 的 LAPACK 包装器
#10742: DOC: special: 添加到 `gammaln` 的文档字符串
#10743: ENH: special: 为 `wrightomega` 添加真实分派
#10746: MAINT: 修复注释、文档和测试名称中的拼写错误
#10747: 移除多余的引号
#10750: MAINT: 使 cython 代码更精确
#10751: MAINT: 检查 scipy.linalg.lapack 函数是否已记录
#10752: MAINT: special: 在 Cephes 中使用 `sf_error`
#10755: DOC: cluster: 为 kmeans2 添加“参见”和“示例”。
#10763: MAINT: 最小化方法的列表
#10768: BUG: 修复 sos2zpk 的边界情况
#10773: 修复 scipy.fftpack.rfft 和 irfft 复杂输入的错误类型
#10776: ENH: 在 `spatial.SphericalVoronoi` 中处理测地线输入
#10777: MAINT: minimizer–>custom 应该处理边界/约束的种类……
#10781: ENH: solve_triangular C 顺序改进
#10787: 修复 `exp1` 在分支切割上的行为并添加文档字符串
#10789: DOC: special: 为 erfc/erfcx/erfi 添加参数/返回文档部分
#10790: Travis CI: sudo 已弃用,Xenial 是默认发行版
#10792: DOC: special: 为 `expi` 添加完整文档字符串
#10799: DOC: special: 为 `expn` 添加完整文档字符串
#10800: 文档编辑 (GSoD)
#10802: BUG: 修复 Radau 中的 UnboundLocalError (scipy#10775)
#10804: ENH: 使用 LRU 缓存加速 next_fast_len
#10805: DOC: 修复 signal.place_poles 中未配对的引号
#10809: ENH: 加速 next_fast_len
#10810: ENH: 为错误的 Fortran 文件引发可捕获的异常
#10811: MAINT: optimize: 从 _remove_redundancy_dense 中删除额外的变量
#10813: MAINT: special: 从 _kolmogi 和 _smirnovi 中删除未使用的变量
#10815: DOC, API: scipy.stats.reciprocal 是“对数均匀分布”
#10816: MAINT: special: 删除已弃用的 `bessel_diff_formula`
#10817: DOC: special: 完成 `fresnel` 的文档字符串
#10820: 修复 compiler_helper.py 以允许在 Linux 上使用 ICC 进行编译
#10823: DOC: 更新参考指南文本以保持写作的一致性……
#10825: MAINT: special: 更改 Voigt 函数的一些特性
#10828: MAINT: integrate: 从 init_callback 中删除未使用的变量
#10830: 在 svds 中添加 LOBPCG 求解器,以及 ARPACK
#10837: WIP: ENH: `spatial.tranform.Rotation` 的归约函数……
#10843: ENH: 向 stats.zscores 添加可选参数以允许……
#10845: 重置 kruskal 修复
#10847: 从 scipy.sparse.lil 中删除冗余的 __getitem__
#10848: 更好地处理空(非缺失)文档字符串
#10849: ENH: 为 LinearOperator 实现 rmatmat
#10850: MAINT : 重构 lil 列表的列表
#10851: DOC: 向 scipy.spatial 教程添加生成艺术示例。
#10852: DOC: linalg: 修复 gh-10838 在示例中未使用的导入已删除
#10854: DOC: special: 为 `pdtr` 添加完整文档字符串
#10861: ENH: 在 stats.binned_statistic_dd 中重用 binnumbers 的选项
#10863: DOC: 部分标准化和验证 scipy.stats 参考……
#10865: BUG: special: 修复无限 `a` 的不完全 gamma 函数
#10866: ENH: 在 spatial.transform.Rotation 中计算平均值
#10867: MAINT: 同时也存储 latex 目录
#10869: ENH: 实现重叠相加卷积
#10870: ENH: 如果读取了 wavfile 数据,则不引发 EOF 错误
#10876: ENH: 将 beta-binomial 分布添加到 scipy.stats
#10878: MAINT: 更新 R 项目 URL
#10883: MAINT: (ndimage) 对输出是否为 numpy dtype 进行更强大的检查
#10884: DOC: 添加了关于向 scipy.stats 添加新分布的说明。
#10885: [BUG] 修复 maxiter=None 导致的 lobpcg 异常
#10899: ENH: 匹配 R 功能的 hmean
#10900: MAINT: stats: 使用 keepdims 来简化 power_divergence 中的几行代码。
#10901: ENH: sparse/linalg: 支持 pydata/sparse 矩阵
#10907: 检查 `maxiter` 是否为整数
#10912: ENH: 警告用户,当 `weight=…` 时,quad() 会忽略 `points=…`……
#10918: CI: 修复 Travis CI py3.8 构建
#10920: MAINT: 将常量更新为 codata 2018 值(第二次尝试)
#10921: ENH: scipy.sparse.lil: tocsr 加速
#10924: BUG: 禁止在 scipy.optimize.curve_fit 中将 ‘args’ 作为 kwarg 传递
#10928: DOC: 向 io.wavfile 文档字符串添加示例
#10934: 拼写错误修复
#10935: BUG: 避免 float 到 unsigned 转换的未定义行为
#10936: DOC: 向 stats.mstats.variation 添加了缺失的示例
#10939: ENH: scipy.sparse.lil: 根据密度加速 tocsr
#10946: BUG: 在使用 trust-constr 方法最小化时设置 verbose > 2……
#10947: DOC: special: 对 `poch` 文档字符串的小改进
#10949: BUG: 修复 erlang_gen._argcheck 的返回类型
#10951: DOC: 修复了 Ricker 小波公式
#10954: BUG: special: 修复 0-d 输入的 `factorial` 返回类型
#10955: MAINT: 放宽 assert_unitary atol 值
#10956: WIP: 使 pdtr(int, double) 成为 pdtr(double, double)
#10957: BUG: 确保长双精度测试数据的完全二进制兼容性
#10964: ENH: 使 Slerp 可用标量参数调用
#10972: BUG: 处理 zpk2sos 中的复增益
#10975: TST: 跳过 test_kendalltau ppc64le
#10978: BUG: boxcox 数据维度和常数检查 #5112
#10979: API: 在 Rotation 类中将 dcm 重命名为 (rotation) 矩阵
#10981: MAINT: 向 igam 和 igamc 添加对 a==0 和 x>0 边缘情况的支持
#10986: MAINT: 从 signaltools.py 中删除对 numpy 的直接导入
#10988: BUG: signal: 修复 issue #10360
#10989: FIX binned_statistic_dd Mac wheel 测试失败
#10990: BUG: 修复 shgo 三角测量中的内存泄漏
#10992: TST: 放宽 upfirdn test_modes 中的容差
#10993: TST: 提高 optimize 测试中的容差
#10997: MAINT: 重构 residue 和 residuez
#11001: DOC: 更新了 Windows 构建教程
#11004: BUG: integrate/quad_vec: 修复 quad_vec 中的几个 bug
#11005: TST: 添加 Python 3.8 Win CI
#11006: DOC: special: 为 `kl_div` 添加参考
#11012: MAINT: 重构 invres 和 invresz
#11015: DOC: special: 为 `rel_entr` 添加参考
#11017: DOC: morestats.py 的 numpydoc 验证
#11018: MAINT: 过滤不相关的警告
#11031: MAINT: 为 pocketfft 实现更新 choose_conv_method
#11034: MAINT: TST: 跳过使用“spawn”的多处理测试……
#11036: DOC: 使用更多有用的内容更新 doc/README。
#11037: DOC: special: 为 `rgamma` 添加完整文档字符串
#11038: DOC: special: 为 polygamma 函数添加参考
#11042: TST: 修复 tf2zpk 测试由于不正确的复数排序而失败的问题。
#11044: MAINT: choose_conv_method 可以为 longcomplex 选择 fftconvolution
#11046: TST: 降低使用参考 lapack 的 ppc64le 的容差
#11048: DOC: special: 为正交多项式函数添加参考
#11049: MAINT: 正确的随机数初始化和可读性修复
#11051: MAINT: pep8 清理
#11054: TST: 提高 dual_annealing SLSQP 测试的测试精度
#11055: DOC: special: 为 `zeta` 添加参考
#11056: API: 弃用 Rotation 中的 normalized 关键字
#11065: DOC: Ubuntu 开发环境快速入门不应修改……
#11066: BUG: 跳过 numpy 顶级类型的弃用
#11067: DOC: 更新了文档以保持写作风格的一致性
#11070: DOC: Ubuntu 开发环境快速入门的修正应……
#11073: DOC: 修复 1.4.0 发行说明
#11081: API: 将 Rotation.match_vectors 替换为 align_vectors
#11083: DOC: 更多 1.4.0 发行说明修复
#11092: BUG: stats: 修复某些分布的冻结
#11096: BUG: scipy.sparse.csgraph: 修复 issue #10774
#11124: 修复与 _stats.pyx 相关的 Cython 警告
#11126: BUG: interpolate/fitpack: 修复 splprep 中的内存泄漏
#11127: 避免 CSR 和 CSC 矩阵索引中的潜在段错误
#11152: BUG: 修复随机状态 bug multiscale_graphcorr
#11166: BUG: 空稀疏切片形状
#11167: BUG: signal.resample 中的冗余 fft
#11181: TST: 修复 aarch64 测试的容差
#11182: TST: 提高 test_maxiter_worsening 的容差
#11199: BUG: sparse.linalg: unsymm 中的错误。实数移位反演 ARPACK 特征值选择