SciPy 1.3.0 发行说明#

SciPy 1.3.0 是 5 个月辛勤工作的成果。它包含许多新功能、大量错误修复、改进的测试覆盖率和更好的文档。此版本中进行了一些 API 更改,这些更改在下面记录。鼓励所有用户升级到此版本,因为其中有大量的错误修复和优化。在升级之前,我们建议用户检查他们自己的代码是否使用了已弃用的 SciPy 功能(要执行此操作,请使用 python -Wd 运行您的代码,并检查 DeprecationWarning s)。我们的开发注意力现在将转移到 1.3.x 分支的错误修复版本,以及在 master 分支上添加新功能。

此版本需要 Python 3.5+ 和 NumPy 1.13.3 或更高版本。

要在 PyPy 上运行,需要 PyPy3 6.0+ 和 NumPy 1.15.0。

此版本亮点#

  • 三个新的 stats 函数,重写的 pearsonr,以及 Kolmogorov-Smirnov 双样本检验的精确计算。

  • scipy.optimize 中用于有界标量函数求根器的新的 Cython API。

  • 显著的 CSRCSC 稀疏矩阵索引性能改进。

  • RotationSpline 中添加了对具有连续角速率和加速度的旋转插值的支持。

新功能#

scipy.interpolate 改进#

引入了一个新的类 CubicHermiteSpline。它是一个分段三次插值器,可匹配观察到的值和一阶导数。现有的三次插值器 CubicSplinePchipInterpolatorAkima1DInterpolator 被设为 CubicHermiteSpline 的子类。

scipy.io 改进#

对于属性关系文件格式 (ARFF),scipy.io.arff.loadarff 现在支持关系属性。

scipy.io.mmread 现在可以解析带有空行的 Matrix Market 格式文件。

scipy.linalg 改进#

添加了对 ?syconv 例程的包装器,这些例程将三角矩阵分解给出的对称矩阵转换为两个矩阵,反之亦然。

scipy.linalg.clarkson_woodruff_transform 现在使用利用稀疏性的算法。这可以为密集输入矩阵提供 60-90% 的加速。真正稀疏的输入矩阵也应从改进的草图算法中受益,该算法现在可以正确地在 O(nnz(A)) 时间内运行。

新增了计算对称 Fiedler 矩阵和 Fiedler 伴随矩阵的函数,分别命名为 scipy.linalg.fiedlerscipy.linalg.fiedler_companion。这些函数可以用于求根。

scipy.ndimage 改进#

在某些情况下,由于移除了对 np.polynomial 的依赖,高斯滤波器的性能可能会提高一个数量级。这可能会影响 scipy.ndimage.gaussian_filter 等函数。

scipy.optimize 改进#

scipy.optimize.brute 最小化器获得了一个新的关键字 workers,可以用于并行计算。

通过 cimport,在新的模块 scipy.optimize.cython_optimize 中提供了一个用于 scipy.optimize 中有界标量函数求根器的 Cython API。这个 API 可以与 nogilprange 一起使用,以循环遍历函数参数数组,从而比纯 Python 更快地求解根数组。

'interior-point' 现在是 linprog 的默认方法,并且当所需的 scikits (scikit-umfpack 和 scikit-sparse) 可用时,'interior-point' 现在使用 SuiteSparse 来解决稀疏问题。在基准测试问题 (gh-10026) 上,执行时间通常减少了 2-3 倍。此外,还添加了一个新的 method='revised simplex'。它不如 method='interior-point' 快或健壮,但它是传统 method='simplex' 的更快、更健壮且同样准确的替代品。

differential_evolution 现在可以使用 Bounds 类来指定函数优化参数的边界。

与某些内部代码的向量化相关的 scipy.optimize.dual_annealing 性能改进。

scipy.signal 改进#

scipy.signal.cont2discrete 现在支持两种额外的离散化方法:impulsefoh

scipy.signal.firls 现在使用更快的求解器。

在某些情况下,scipy.signal.detrend 现在具有更小的物理内存占用,可以使用新的 overwrite_data 关键字参数加以利用。

scipy.signal.firwinpass_zero 参数现在接受新的字符串参数,可以指定所需的滤波器类型:'bandpass''lowpass''highpass''bandstop'

由于算法中全局解释器锁 (GIL) 的保留减少,scipy.signal.sosfilt 的性能可能有所提高。

scipy.sparse 改进#

csgraph.dijsktra 中添加了一个新的关键字,允许用户查询到任何传入索引的最短路径,而不是到每个传入索引的最短路径。

在大型问题上,scipy.sparse.linalg.lsmr 的性能提高了大约 10%。

改进了 scipy.sparse.linalg.lobpcg 使用的算法的性能并减少了物理内存占用。

CSRCSC 稀疏矩阵的 fancy indexing 性能得到了显著提高。

scipy.spatial 改进#

scipy.spatial.ConvexHull 现在具有一个 good 属性,可以与 QGn Qhull 选项一起使用,以确定从外部查询点可以看到凸包的哪些外部面。

scipy.spatial.cKDTree.query_ball_point 已现代化,可以使用一些较新的 Cython 功能,包括 GIL 处理和异常转换。修复了 return_sorted=True 和标量查询的问题,并添加了一个名为 return_length 的新模式。return_length 仅计算返回的索引列表的长度,而不是每次都分配数组。

添加了 scipy.spatial.transform.RotationSpline,以实现具有连续角速度和加速度的旋转插值。

scipy.stats 改进#

添加了一个新函数来计算 Epps-Singleton 检验统计量 scipy.stats.epps_singleton_2samp,该函数可应用于连续和离散分布。

添加了新函数 scipy.stats.median_absolute_deviationscipy.stats.gstd(几何标准差)。scipy.stats.combine_pvalues 方法现在支持 pearsontippettmudholkar_george p 值组合方法。

scipy.stats.ortho_groupscipy.stats.special_ortho_grouprvs(dim) 函数的算法从 O(dim^4) 的实现更新为 O(dim^3),这为 dim>100 提供了很大的速度改进。

重写了 scipy.stats.pearsonr,使用更健壮的算法,在潜在的病态输入上提供有意义的异常和警告,并修复了原始实现中至少五个单独报告的问题。

提高了 hypergeom.logcdfhypergeom.logsf 的精度。

为 Kolmogorov-Smirnov (KS) 双样本检验添加了精确计算,取代了之前对双边检验 stats.ks_2samp 的近似计算。还添加了单边、双样本 KS 检验,以及 stats.ks_2samp 的关键字 alternative

向后不兼容的更改#

scipy.interpolate 更改#

已移除 scipy.interpolate 中的函数(splevalsplinesplmakespltopp)以及 scipy.misc 中的函数(bytescalefromimageimfilterimreadimresizeimrotateimsaveimshowtoimage)。前一组函数自 v0.19.0 版本起已被弃用,后一组函数自 v1.0.0 版本起已被弃用。同样,scipy.misc 中的别名(combfactorialfactorial2factorialklogsumexppadeinfosourcewho)也已被移除,它们自 v1.0.0 版本起已被弃用。可以参考 SciPy v1.1.0 版本的文档来追踪已迁移函数的新导入位置。

scipy.linalg 的更改#

对于 pinvpinv2pinvh,默认的截止值已更改以保持一致性(请参阅文档了解实际值)。

scipy.optimize 的更改#

linprog 的默认方法现在是 'interior-point'。该方法的鲁棒性和速度是有代价的:解决方案可能不精确到机器精度,或者不对应于约束定义的多面体的顶点。要恢复到原始的单纯形方法,请包含参数 method='simplex'

scipy.stats 的更改#

以前,ks_2samp(data1, data2) 会运行双侧检验并返回近似的 p 值。新的签名 ks_2samp(data1, data2, alternative="two-sided", method="auto") 仍然默认运行双侧检验,但会为小样本返回精确的 p 值,为大样本返回近似值。method="asymp" 将等同于旧版本,但 auto 是更好的选择。

其他更改#

我们的教程已扩展,新增了一个关于全局优化器的章节。

stats.distributions 的教程已进行了重构。

如果已超出最大迭代次数,disp 为 false,并且 full_output 为 true,则对于有界标量函数求根器,scipy.optimize 现在会正确地将结果的收敛标志设置为 CONVERR,表示收敛错误。

如果 xdataydata 的 dtypes 不同,scipy.optimize.curve_fit 不再会失败;现在它们都会自动转换为 float64

scipy.ndimage 中的函数,包括 binary_erosionbinary_closingbinary_dilation,现在要求迭代次数为整数值,这缓解了许多报告的问题。

修复了 scipy.stats.wilcoxonzero_method == "pratt" 的情况下正态近似的问题。

修复了与 stats 分布在 _argcheck() 中设置成员变量相关的错误概率、广播问题和线程安全问题。

在以下情况下,scipy.optimize.newton 现在会正确引发 RuntimeError:当使用默认参数且获得导数值为零时(这是无法收敛的特殊情况)。

现在提供了一个工具链路线图草案,其中列出了包括 Python 版本、C 标准和 NumPy 版本在内的兼容性计划。

作者#

  • ananyashreyjain +

  • ApamNapat +

  • Scott Calabrese Barton +

  • Christoph Baumgarten

  • Peter Bell +

  • Jacob Blomgren +

  • Doctor Bob +

  • Mana Borwornpadungkitti +

  • Matthew Brett

  • Evgeni Burovski

  • CJ Carey

  • Vega Theil Carstensen +

  • Robert Cimrman

  • Forrest Collman +

  • Pietro Cottone +

  • David +

  • Idan David +

  • Christoph Deil

  • Dieter Werthmüller

  • Conner DiPaolo +

  • Dowon

  • Michael Dunphy +

  • Peter Andreas Entschev +

  • Gökçen Eraslan +

  • Johann Faouzi +

  • Yu Feng

  • Piotr Figiel +

  • Matthew H Flamm

  • Franz Forstmayr +

  • Christoph Gohlke

  • Richard Janis Goldschmidt +

  • Ralf Gommers

  • Lars Grueter

  • Sylvain Gubian

  • Matt Haberland

  • Yaroslav Halchenko

  • Charles Harris

  • Lindsey Hiltner

  • JakobStruye +

  • He Jia +

  • Jwink3101 +

  • Greg Kiar +

  • Julius Bier Kirkegaard

  • John Kirkham +

  • Thomas Kluyver

  • Vladimir Korolev +

  • Joseph Kuo +

  • Michael Lamparski +

  • Eric Larson

  • Denis Laxalde

  • Katrin Leinweber

  • Jesse Livezey

  • ludcila +

  • Dhruv Madeka +

  • Magnus +

  • Nikolay Mayorov

  • Mark Mikofski

  • Jarrod Millman

  • Markus Mohrhard +

  • Eric Moore

  • Andrew Nelson

  • Aki Nishimura +

  • OGordon100 +

  • Petar Mlinarić +

  • Stefan Peterson

  • Matti Picus +

  • Ilhan Polat

  • Aaron Pries +

  • Matteo Ravasi +

  • Tyler Reddy

  • Ashton Reimer +

  • Joscha Reimer

  • rfezzani +

  • Riadh +

  • Lucas Roberts

  • Heshy Roskes +

  • Mirko Scholz +

  • Taylor D. Scott +

  • Srikrishna Sekhar +

  • Kevin Sheppard +

  • Sourav Singh

  • skjerns +

  • Kai Striega

  • SyedSaifAliAlvi +

  • Gopi Manohar T +

  • Albert Thomas +

  • Timon +

  • Paul van Mulbregt

  • Jacob Vanderplas

  • Daniel Vargas +

  • Pauli Virtanen

  • VNMabus +

  • Stefan van der Walt

  • Warren Weckesser

  • Josh Wilson

  • Nate Yoder +

  • Roman Yurchak

共有 97 人为此版本做出了贡献。名字旁边带有“+”号的人是首次贡献补丁。此名称列表是自动生成的,可能并不完整。

1.3.0 版本已关闭的问题#

  • #1320: scipy.stats.distribution: 如果 self.a, self.b … 存在问题

  • #2002: 在 scipy.stats.distributions.##._argcheck 中设置成员 (Trac #1477)

  • #2823: 分布方法添加 tmp

  • #3220: Scipy.opimize.fmin_powell direc 参数语法不明确

  • #3728: scipy.stats.pearsonr: 零方差输入可能存在错误

  • #6805: 等值序列的 scipy-wilcoxon-符号秩检验错误

  • #6873: ‘stats.boxcox’ 返回所有相同的值

  • #7117: 当使用 float32 输入数据到 curve_fit 和其他函数时警告用户

  • #7632: 无法告知 `optimize.least_squares` 求解器…

  • #7730: stats.pearsonr:对于长度为 … 的数据集,可能存在除以零的情况

  • #7933: 当提供截断范围之外的值时,stats.truncnorm 失败…

  • #8033: 将标准滤波器类型添加到 firwin 中以直观地设置 pass_zero…

  • #8600: lfilter.c.src 的 zfill 存在错误的头文件

  • #8692: `stats.hypergeom.logcdf` 的非负值

  • #8734: 启用 pip 构建隔离

  • #8861: scipy.linalg.pinv 给出错误的结果,而 scipy.linalg.pinv2…

  • #8915: 需要修复针对较旧 numpy 版本的 macOS 构建

  • #8980: scipy.stats.pearsonr 在 x 和 y 的值很高时溢出

  • #9226: BUG: signal: SystemError: <built-in function _linear_filter>…

  • #9254: BUG: root 查找器 brentq 等,即使…,也标记为“已收敛”

  • #9308: 测试失败 - test_initial_constraints_as_canonical

  • #9353: 如果 r_num/r_den = inf,scipy.stats.pearsonr 返回 r=1

  • #9359: 普朗克分布是一种几何分布

  • #9381: linregress 应该在 2x2 数组情况下警告用户

  • #9406: BUG: stats: 在 pearsonr 中,当 r 是 nan 时,p 值也必须…

  • #9437: 无法从 size_t 索引创建稀疏矩阵

  • #9518: loadarff 中的关系属性

  • #9551: BUG: scipy.optimize.newton 说 x^2+1 的根是零。

  • #9564: rv_sample 在 scipy.stats 中接受无效输入

  • #9565: stats.rv_sample 中多维输入处理不当

  • #9581: 当 x 和 y 数据为…时,最小二乘最小化会静默失败

  • #9587: scipy.constants.au 的过时值

  • #9611: kendall 中新的 p 值计算方式出现溢出错误…

  • #9645: 当数组长度可变时(`dtype=object`),`scipy.stats.mode` 会崩溃

  • #9734: pytest 中 np.matrix 的 PendingDeprecationWarning

  • #9786: stats.ks_2samp() 对于小型数据集具有误导性。

  • #9790: detrend 上的过度内存使用

  • #9801: dual_annealing 不会在 OptimizeResult 中设置 success 属性

  • #9833: 在构建 html 文档期间,来自 mielke.stats() 的 IntegrationWarning。

  • #9835: scipy.signal.firls 似乎效率低于 MATLAB firls

  • #9864: 如果调用时没有…,Curve_fit 不会检查空输入数据

  • #9869: scipy.ndimage.label:次要文档问题

  • #9882: scipy.spatial.transform 中括号位置不正确

  • #9889: scipy.signal.find_peaks 次要文档问题

  • #9890: cKDTree 中 Minkowski p 范数对于 2 或…以外的值的问题

  • #9896: scipy.stats._argcheck 设置(而不仅仅是检查)值

  • #9905: ndimage.binary_erosion 中的内存错误

  • #9909: 当迭代次数为浮点数时,binary_dilation/erosion/closing 会崩溃

  • #9919: BUG: `coo_matrix` 不验证 `shape` 参数。

  • #9982: lsq_linear 在使用 ‘trf’ 方法时挂起/无限循环

  • #10003: exponnorm.pdf 对小的 K 返回 NAN

  • #10011: scipy.ndimage.rotate 中对无效旋转平面的检查不正确

  • #10024: 无法从 git 构建

  • #10048: DOC: scipy.optimize.root_scalar

  • #10068: DOC: scipy.interpolate.splev

  • #10074: BUG: `expm` 在向后…中计算错误的系数

针对 1.3.0 的拉取请求#

  • #7827: ENH: sparse:稀疏矩阵索引的全面改进

  • #8431: ENH: Cython 优化零点 api

  • #8743: DOC: 更新了 linalg.pinv, .pinv2, .pinvh 文档字符串

  • #8744: DOC: 为 remez 文档字符串添加了示例

  • #9227: DOC: 更新 “fmin_powell” 的 “direc” 参数的描述

  • #9263: ENH: optimize: 为 scipy.optimize.linprog 添加了 “修订单纯形法”

  • #9325: DEP: 删除 1.3.0 的弃用函数

  • #9330: 添加关于推和拉仿射变换的注释

  • #9423: DOC: 明确说明 stats.linregress 中如何处理 2x2 输入数组

  • #9428: ENH: 并行化 brute

  • #9438: BUG: 使用 size_t 索引初始化 coo 矩阵

  • #9455: MAINT: 加快 get_(lapack,blas)_func 的速度

  • #9465: MAINT: 清理 optimize.zeros C 求解器接口/代码。

  • #9477: DOC: linalg: 修复 lstsq 文档字符串中的残差形状

  • #9478: DOC: 为 rosen 函数添加文档字符串示例

  • #9479: DOC: 为 ai_zeros 和 bi_zeros 添加文档字符串示例

  • #9480: MAINT: linalg: lstsq 清理

  • #9489: DOC: 过去一年变化的路线图更新。

  • #9492: MAINT: stats: 改进 chi2 ppf 方法的实现。

  • #9497: DOC: 改进文档字符串 sparse.linalg.isolve

  • #9499: DOC: 为了保持一致性,在 .rst 文档文件中用 “SciPy” 替换 “Scipy”。

  • #9500: DOC: 记录工具链及其路线图。

  • #9505: DOC: 指定使用哪个偏度定义

  • #9511: DEP: interpolate: 删除弃用的 interpolate_wrapper

  • #9517: BUG: 改进 stats.iqr 中的错误处理

  • #9522: ENH: 将 Fiedler 和 fiedler 伴随矩阵添加到特殊矩阵中

  • #9526: TST: 放宽 signal.correlate 测试中的精度要求

  • #9529: DOC: 修复 optimize.newton 示例中丢失的随机种子

  • #9533: MAINT: 尽可能使用列表推导式

  • #9537: DOC: 添加一个“大局”路线图

  • #9538: DOC: 在 .py, .rst 和 .txt 文档文件中用 “NumPy” 替换 “Numpy”…

  • #9539: ENH: 向 scipy.stats 添加双样本测试 (Epps-Singleton)

  • #9559: DOC: 向教程添加关于全局优化器的章节

  • #9561: ENH: 删除 noprefix.h,相应地更改代码

  • #9562: MAINT: stats: 重写 pearsonr。

  • #9563: BUG: linprog(method='simplex') 中回调的次要错误修复

  • #9568: MAINT: 如果 disp 为 true,则对于零阶导数的牛顿法引发运行时错误,…

  • #9570: 更正 optimize 中 show_options 的文档字符串。修复 #9407

  • #9573: BUG 修复了 pk 变量预检查的范围

  • #9577: TST: 修复 signal.stft 测试中的次要问题。

  • #9580: 在列表之前包含空行 - 修复 #8658

  • #9582: MAINT: 删除 Python 2.7 和 3.4

  • #9588: MAINT: 将 `constants.astronomical_unit` 更新为新的 2012 值。

  • #9592: TST: 向 CI 添加 32 位测试

  • #9593: DOC: 将累积密度替换为累积分布

  • #9596: TST: 从 Azure CI 中删除 VC 9.0

  • #9599: 将 DOI 超链接到首选解析器

  • #9601: DEV: 尝试限制 PyPy 上的 GC 内存使用

  • #9603: MAINT: 改进超几何分布的 logcdf 和 logsf

  • #9605: 在 LinearOperator 注释和 ARPACK 示例中引用 pylops

  • #9617: TST: 减少 sparse.linalg.lgmres 测试的最大内存使用量

  • #9619: FIX: 稀疏矩阵加法/减法消除了显式零

  • #9621: scipy.stats 中 rv_sample 的错误修复

  • #9622: MAINT: 在 directed_hausdorff 距离中引发错误

  • #9623: DOC: 以警告作为错误构建文档

  • #9625: 在 trust... 中返回 ‘hessp’ 的调用次数(不仅是 ‘hess’)

  • #9627: 错误修复:忽略 mmio 中的空行

  • #9637: 计算数组 MAD 的函数

  • #9646: 错误修复:stats:ndim > 1 的对象的 mode

  • #9648: 将 `stats.contingency` 添加到 refguide-check

  • #9650: 增强:lobpcg() 算法的许多改进

  • #9652: 将 misc.doccer 移动到 _lib.doccer

  • #9660: 增强:向 combine_pvalues 添加 pearson、tippett 和 mudholkar-george 方法

  • #9661: 错误修复:修复 ksone 右端点、文档和测试。

  • #9664: 增强:添加多目标 dijsktra 性能增强

  • #9670: MAINT:链接 scipy.stats 中的 planck 和几何分布

  • #9676: 增强:优化:将 linprog 的默认方法更改为内点法

  • #9685: 添加了对 ndimage.filters.median_filter 的引用

  • #9705: 修复 expm 辅助函数中的系数

  • #9711: 在简单类型的 sosfilt 处理期间释放 GIL

  • #9721: 增强:Convexhull visiblefacets

  • #9723: BLD:修改 rv_generic._construct_doc 以打印失败的分布…

  • #9726: 错误修复:修复 `signal.lfilter` 的一些小问题

  • #9729: 错误修复:二值图像操作的类型检查迭代

  • #9730: 增强:将 sizeof(NI_WatershedElement) 减少 20%

  • #9731: 增强:删除可疑的类型转换序列

  • #9739: 错误修复:如果 u 正好在 span Q 中,则 qr_updates 失败

  • #9749: 错误修复:MapWrapper.__exit__ 应该终止

  • #9753: 增强:添加 Kolmogorov-Smirnov 双样本的精确计算…

  • #9755: 文档:为 signal.impulse 添加示例,从 impulse2 复制

  • #9756: 文档:为 iirdesign 添加文档字符串示例

  • #9757: 文档:为阶跃函数添加示例

  • #9759: 增强:允许 pass_zero 的行为类似于 btype

  • #9760: 文档:为 lp2bs 添加文档字符串

  • #9761: 文档:为 lp2bp 添加文档字符串和示例

  • #9764: 错误修复:捕获矩阵的内部警告

  • #9766: 增强:通过删除对 np.polynomial 的依赖来加速 _gaussian_kernel1d

  • #9769: 错误修复:修复三次样条只读问题

  • #9773: 文档:一些文档字符串

  • #9774: TST:将 Azure CI OpenBLAS 版本提升到与 wheels 匹配

  • #9775: 文档:提高 scipy.optimize.leastsq 中 cov_x 文档的清晰度

  • #9779: 增强:dual_annealing 向量化 visit_fn

  • #9788: TST, 错误修复:与 NumPy < 1.14.0 相关的 f2py 问题

  • #9791: 错误修复:修复 scalar_search_wolfe2 中未强制执行的 amax 约束

  • #9792: 增强:允许在 “detrend” 函数中进行原地复制

  • #9795: 文档:修复/更新 dstn 和 dst 的文档字符串

  • #9796: MAINT:允许 least_squares 中的 None 容差

  • #9798: 错误修复:修复单元测试中 scipy 问题 9785 中的中止陷阱 6 错误

  • #9807: MAINT:改进 wilcoxon 中的文档并添加替代关键字…

  • #9808: 修复 PPoly 积分并测试 CubicSpline

  • #9810: 增强:添加几何标准差函数

  • #9811: MAINT:删除 scalar_search_wolfe2 中无效的 derphi 默认值 None

  • #9813: 调整 C 中的汉明距离以支持权重

  • #9817: 文档:将求解器描述复制到求解器模块

  • #9829: 增强:添加 FOH 和等效的脉冲响应离散化…

  • #9831: 增强:实现 RotationSpline

  • #9834: 文档:更改 mielke 分布的默认参数以确保…

  • #9838: 增强:为 firls 使用更快的求解器

  • #9854: 增强:loadarff 现在支持关系属性。

  • #9856: integrate.bvp - 改进非线性边界条件的处理

  • #9862: TST:减少 Appveyor CI 负载

  • #9874: 文档:更新发行说明中的要求

  • #9883: 错误修复:修复 spatial.rotation 中的括号

  • #9884: 增强:在 Clarkson-Woodruff 草图中使用稀疏性

  • #9888: MAINT:替换 NumPy 别名函数

  • #9892: 错误修复:当 p 为…时,修复 9890 query_ball_point 返回错误结果

  • #9893: 错误修复:如果使用 bounds 调用,curve_fit 不检查空输入

  • #9894: scipy.signal.find_peaks 文档错误

  • #9898: 错误修复:在 OptimizeResult 中设置 success 属性。请参阅 #9801

  • #9900: 错误修复:限制 rv_generic._argcheck() 及其覆盖从设置…

  • #9906: 修复了 kde logpdf 中的一个错误

  • #9911: 文档:用 numpy 中的示例替换 “np.select” 的示例…

  • #9912: BF(DOC):指向 numpy.select 而不是普通的 (python) .select

  • #9914: 文档:更改 signaltools 的 _validate_pad 中的 ValueError 消息。

  • #9915: cKDTree query_ball_point 改进

  • #9918: 在文档字符串中使用 boxsize 参数更新 ckdtree.pyx

  • #9920: 错误修复:sparse:如果给定密集参数,则验证显式形状…

  • #9924: BLD:添加回 pyproject.toml

  • #9931: 修复空约束

  • #9935: 文档:修复 stats.f_oneway 的引用

  • #9936: 恢复 gh-9619:“修复:稀疏矩阵加法/减法消除了…”

  • #9937: MAINT:修复 PEP8 问题并更新到 pycodestyle 2.5.0

  • #9939: 文档:更正 `ndimage.label` 文档字符串中的 `structure` 描述

  • #9940: MAINT:删除多余的 distutils 副本

  • #9945: 增强:differential_evolution 可以使用 Bounds 对象

  • #9949: 添加了 'std' 以添加文档字符串,因为它是一个 `known_stats`…

  • #9953: 文档:清理统计教程的文档。

  • #9962: Bounds 的 __repr__

  • #9971: 增强:提高 lsmr 的性能

  • #9987: CI:将 Sphinx 版本固定到 1.8.5

  • #9990: 增强:约束违反

  • #9991: 错误修复:避免 newton 中原地修改输入数组

  • #9995: MAINT:sparse.csgraph:添加 cdef 以停止构建警告。

  • #9996: 错误修复:使 minimize_quadratic_1d 能够正确处理无限边界

  • #10004: 错误修复:修复 linprog - simplex 中的未绑定局部错误。

  • #10007: BLD:修复使用构建隔离的 Python 3.7 构建

  • #10009: 错误修复:确保 _binary_erosion 只接受整数数字…

  • #10016: 更新到 airspeed-velocity 的链接

  • #10017: 文档:更新 `interpolate.LSQSphereBivariateSpline` 以包含…

  • #10018: MAINT: special: 修复编译时出现的一些警告

  • #10019: TST: Azure 总结测试失败

  • #10021: ENH: 引入 CubicHermiteSpline

  • #10022: BENCH: 增加 asv 中的 cython 版本以修复基准构建

  • #10023: BUG: 避免 exponnorm 在 K 值较小时产生 nan

  • #10025: BUG: optimize: 微调 linprog 状态 4 错误消息

  • #10026: ENH: optimize: 当...时,在 linprog 内点法中使用 SuiteSparse

  • #10027: MAINT: cluster: 清理函数中 malloc() 的使用

  • #10028: 修复旋转无效平面检查

  • #10040: MAINT: 修复 scipy.stats 中威尔科克斯检验的 pratt 方法

  • #10041: MAINT: special: 修复构建 AMOS 时产生的警告

  • #10044: DOC: 修复 spatial.transform.Rotation 的文档字符串

  • #10047: MAINT: interpolate: 修复一些构建警告

  • #10051: 向 setup 添加 project_urls

  • #10052: 如果超出最大迭代次数,则不将标志设置为“已收敛”

  • #10054: MAINT: signal: 修复一些构建警告并使一些 C 代码现代化

  • #10056: BUG: 确保 kendaltau 中的阶乘不太大

  • #10058: 从正交和特殊正交组采样时的小幅加速

  • #10059: BUG: optimize: 通过增加 tol 修复 #10038

  • #10061: BLD: DOC: 通过解析 python 版本使构建文档更容易

  • #10064: ENH: 正交和特殊正交组的显著加速

  • #10065: DOC: 重写 `optimize.root_scalar` 中的参数描述

  • #10066: BUG: signal: 修复当 deriv > polyorder 时 savgol_coeffs 引发的错误

  • #10067: MAINT: 修复 pinv2 和 pinvh 的截止值不一致

  • #10072: BUG: stats: 修复 boxcox_llf 以避免精度损失

  • #10075: ENH: 为 ?syconv 例程添加包装器

  • #10076: BUG: optimize: 修复混合 float32/float64 输入的 curve_fit

  • #10077: DOC: 替换 `interpolate.splev` 文档字符串中未定义的 `k`

  • #10079: DOC: 修复了错别字,重新排列了 stats.morestats.wilcoxon 的一些文档。

  • #10080: TST: 安装 scikit-sparse 以进行完整的 TravisCI 测试

  • #10083: 清理 optimize.linprog 中的 ``_clean_inputs``

  • #10088: ENH: optimize: 如果可用,linprog 测试 CHOLMOD/UMFPACK 求解器

  • #10090: MAINT: 修复 pandas 的 CubicSplinerInterpolator

  • #10091: MAINT: 改进超几何分布的 logcdf 和 logsf

  • #10095: MAINT: 清理 linprog 中的 ``_clean_inputs``

  • #10116: MAINT: 更新 scipy-sphinx-theme

  • #10135: BUG: 修复 linprog 修订单纯形文档字符串问题失败