SciPy 1.3.0 发行说明#

SciPy 1.3.0 是 5 个月辛勤工作的结晶。它包含许多新功能、大量错误修复、改进的测试覆盖率和更好的文档。此版本中进行了一些 API 更改,详情如下。建议所有用户升级到此版本,因为它包含了大量的错误修复和优化。在升级之前,我们建议用户检查自己的代码是否使用了已弃用的 SciPy 功能(为此,请使用 python -Wd 运行您的代码并检查 DeprecationWarning 警告)。我们的开发重心现在将转移到 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,可用于并行计算。

scipy.optimize 中有界标量函数求根器的 Cython API 已在新模块 scipy.optimize.cython_optimize 中通过 cimport 提供。此 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'(带阻)。

scipy.signal.sosfilt 的性能可能有所提高,因为算法中全局解释器锁(GIL)的保留时间更短。

scipy.sparse 改进#

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

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

提高了 scipy.sparse.linalg.lobpcg 所用算法的性能,并减少了物理内存占用。

CSRCSC 稀疏矩阵高级索引的性能得到了显著提升。

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 起已被弃用。类似地,自 v1.0.0 起已被弃用的 scipy.misc 中的别名(combfactorialfactorial2factorialklogsumexppadeinfosourcewho)也已被移除。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 教程进行了重构。

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

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

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

修复了 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.optimize.fmin_powell direc 参数语法不明确

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

  • #6805: scipy-wilcoxon-signed-rank-test-for-equal-series 错误

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

  • #7117: 警告用户在 curve_fit 和相关函数中使用 float32 输入数据

  • #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: <内置函数 _linear_filter>...

  • #9254: BUG: 求根器 brentq 等,即使 ... 标志也显示“已收敛”

  • #9308: 测试失败 - test_initial_constraints_as_canonical

  • #9353: scipy.stats.pearsonr 在 r_num/r_den = inf 时返回 r=1

  • #9359: Planck 分布是几何分布

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

  • #9406: BUG: stats: 在 pearsonr 中,当 r 为 NaN 时,p 值也必须...

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

  • #9518: loadarff 中的关系属性

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

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

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

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

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

  • #9611: kendall...中 p 值计算新方法溢出错误

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

  • #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 在 iterations 为浮点数时崩溃

  • #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 的 docstrings

  • #8744: DOC: 为 remez docstring 添加了示例

  • #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 docstring 中 residues shape 的问题

  • #9478: DOC: 为 rosen 函数添加了 docstring 示例

  • #9479: DOC: 为 ai_zeros 和 bi_zeros 添加了 docstring 示例

  • #9480: MAINT: linalg: lstsq 清理

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

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

  • #9497: DOC: 改进 docstrings 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 为真,newton 在 zeroder 时引发运行时错误,...

  • #9570: 优化中 show_options 的正确 docstring。修复 #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: 在信任...中返回对“hessp”的调用次数(不仅仅是“hess”)

  • #9627: BUG: 忽略 mmio 中的空行

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

  • #9646: BUG: stats: 对象模式,ndim > 1

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

  • #9650: ENH: 许多 lobpcg() 算法改进

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

  • #9660: ENH: 为 combine_pvalues 添加 pearson, tippett 和 mudholkar-george

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

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

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

  • #9676: ENH: optimize: 将 linprog 默认方法更改为 interior-point

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

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

  • #9711: 在 sosfilt 处理简单类型时释放 GIL

  • #9721: ENH: Convexhull 可见面

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

  • #9726: BUG: 修复 `signal.lfilter` 的小问题

  • #9729: BUG: 检查二值图像操作的迭代类型

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

  • #9731: ENH: 移除可疑的类型转换序列

  • #9739: BUG: 如果 u 恰好在 Q 的 span 中,qr_updates 会失败

  • #9749: BUG: MapWrapper.__exit__ 应该终止

  • #9753: ENH: 为 Kolmogorov-Smirnov 双样本...添加了精确计算

  • #9755: DOC: 为 signal.impulse 添加了示例,复制自 impulse2

  • #9756: DOC: 为 iirdesign 添加了 docstring 示例

  • #9757: DOC: 添加了阶跃函数的示例

  • #9759: ENH: 允许 pass_zero 像 btype 一样作用

  • #9760: DOC: 为 lp2bs 添加了 docstring

  • #9761: DOC: 为 lp2bp 添加了 docstring 和示例

  • #9764: BUG: 捕获矩阵的内部警告

  • #9766: ENH: 通过移除对 np.polynomial 的依赖来加速 _gaussian_kernel1d

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

  • #9773: DOC: 几个 docstrings

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

  • #9775: DOC: 改进 scipy.optimize.leastsq 中 cov_x 文档的清晰度

  • #9779: ENH: dual_annealing 向量化 visit_fn

  • #9788: TST, BUG: 与 NumPy < 1.14.0 相关的 f2py 问题

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

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

  • #9795: DOC: 修复/更新 dstn 和 dst 的 docstring

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

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

  • #9807: MAINT: 改进 doc 并为 wilcoxon 添加 alternative 关键字...

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

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

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

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

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

  • #9829: ENH: 实现 FOH 和等效冲激响应离散化...

  • #9831: ENH: 实现 RotationSpline

  • #9834: DOC: 更改 mielke 分布默认参数以确保...

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

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

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

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

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

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

  • #9884: ENH: 在 Clarkson-Woodruff Sketch 中使用稀疏性

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

  • #9892: BUG: 修复 9890 query_ball_point 在 p 是...时返回错误结果

  • #9893: BUG: curve_fit 在使用边界调用时未检查空输入

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

  • #9898: BUG: 在 OptimizeResult 中设置 success 属性。参见 #9801

  • #9900: BUG: 限制 rv_generic._argcheck() 及其覆盖设置...

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

  • #9911: DOC: 将“np.select”的示例替换为 numpy...

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

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

  • #9915: cKDTree query_ball_point 改进

  • #9918: 更新 ckdtree.pyx 中带有 boxsize 参数的 docstring

  • #9920: BUG: sparse: 如果给定密集参数,验证显式形状...

  • #9924: BLD: 重新添加 pyproject.toml

  • #9931: 修复空约束

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

  • #9936: 恢复 gh-9619: “FIX: 稀疏矩阵加法/减法消除...

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

  • #9939: DOC: 更正 `ndimage.label` docstring 中 `structure` 的描述

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

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

  • #9949: 添加了“std”以添加 doctstrings,因为它是一个 `known_stats`...

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

  • #9962: Bounds 的 __repr__

  • #9971: ENH: 提高 lsmr 的性能

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

  • #9990: ENH: 约束违反

  • #9991: BUG: 避免 newton 中对输入数组的原地修改

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

  • #9996: BUG: 修复 minimize_quadratic_1d 在无限边界下正确工作

  • #10004: BUG: 修复 linprog - 单纯形中未绑定局部错误。

  • #10007: BLD: 修复 Python 3.7 在构建隔离下的构建

  • #10009: BUG: 确保 _binary_erosion 只接受整数...

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

  • #10017: DOC: 更新 `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: 当 SuiteSparse 可用时,在 linprog interior-point 中使用 SuiteSparse

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

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

  • #10040: MAINT: 修复 scipy.stats 中 wilcox 检验的 pratt 方法

  • #10041: MAINT: special: 修复构建 AMOS 时生成的一些警告...

  • #10044: DOC: 修复 spatial.transform.Rotation docstrings

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

  • #10051: 将 project_urls 添加到 setup

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

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

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

  • #10058: 从 ortho 和 special_ortho 组进行采样时小幅提速

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

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

  • #10064: ENH: ortho 和 special ortho 组显著提速

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

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

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

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

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

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

  • #10077: DOC: 替换 `interpolate.splev` docstring 中未定义的 `k`

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

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

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

  • #10088: ENH: optimize: 当 SuiteSparse/UMFPACK 求解器可用时,在 linprog interior-point 中测试它们

  • #10090: MAINT: 修复 Pandas 的 CubicSplinerInterpolator

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

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

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

  • #10135: BUG: 修复 linprog revised simplex docstring 问题失败