SciPy 0.19.0 发行说明#

SciPy 0.19.0 是 7 个月辛勤工作的结晶。它包含许多新功能、大量的错误修复、改进的测试覆盖率和更好的文档。此版本中存在一些弃用和 API 更改,如下所述。建议所有用户升级到此版本,因为它包含大量错误修复和优化。此外,我们的开发注意力现在将转移到 0.19.x 分支上的错误修复版本,以及在主分支上添加新功能。

此版本需要 Python 2.7 或 3.4-3.6 以及 NumPy 1.8.2 或更高版本。

此版本的亮点包括

  • 一个统一的外部函数接口层,scipy.LowLevelCallable

  • 通过 cimport scipy.special.cython_specialscipy.special 模块获取标量、类型化通用函数的 Cython API。

新功能#

外部函数接口改进#

scipy.LowLevelCallable 为在 Python 空间中包装底层编译的回调函数提供了一个新的统一接口。它支持 Cython 导入的“api”函数、ctypes 函数指针、CFFI 函数指针、PyCapsules、Numba jitted 函数等。有关详细信息,请参阅 gh-6509

scipy.linalg 改进#

函数 scipy.linalg.solve 获取了另外两个关键字 assume_atransposed。底层 LAPACK 例程被替换为“专家”版本,现在也可用于求解对称、埃尔米特和正定系数矩阵。此外,病态矩阵现在会导致发出警告,其中包含估计的条件数信息。旧的 sym_pos 关键字保留以实现向后兼容性,但它与使用 assume_a='pos' 相同。此外,debug 关键字已弃用,它没有任何功能,只是打印 overwrite_<a, b> 值。

添加了函数 scipy.linalg.matrix_balance 以使用 LAPACK xGEBAL 例程族执行所谓的矩阵平衡。这可用于通过对角相似变换近似使行和列范数相等。

函数 scipy.linalg.solve_continuous_arescipy.linalg.solve_discrete_are 具有数值上更稳定的算法。这些函数还可以求解广义代数矩阵黎卡提方程。此外,两者都获得了 balanced 关键字来打开和关闭平衡。

scipy.spatial 改进#

scipy.spatial.SphericalVoronoi.sort_vertices_of_regions 已使用 Cython 重写以提高性能。

scipy.spatial.SphericalVoronoi 可以处理超过 20 万个点(至少 1000 万个),并且性能得到了提高。

添加了函数 scipy.spatial.distance.directed_hausdorff 来计算有向 Hausdorff 距离。

scipy.spatial.cKDTreecount_neighbors 方法通过新的关键字 weightscumulative 获得了执行加权对计数的能力。有关详细信息,请参阅 gh-5647

scipy.spatial.distance.pdistscipy.spatial.distance.cdist 现在支持非双精度自定义度量标准。

scipy.ndimage 改进#

回调函数 C API 在 Python 2.7 中支持 PyCapsules。

多维滤波器现在允许为不同的轴设置不同的外推模式。

scipy.optimize 改进#

scipy.optimize.basinhopping 全局最小化器获得了一个新的关键字 seed,可用于设置随机数生成器的种子并获得可重复的最小化。

scipy.optimize.curve_fit 中的关键字 sigma 被重载,也可以接受数据中误差的协方差矩阵。

scipy.signal 改进#

函数 scipy.signal.correlatescipy.signal.convolve 有一个新的可选参数 methodauto 的默认值估计两种计算方法中最快的方法,即直接方法和傅里叶变换方法。

添加了一个新函数来选择卷积/相关方法,即 scipy.signal.choose_conv_method,如果对许多大小相同的数组执行卷积或相关运算,则此函数可能适用。

添加了新函数来计算输入信号的复数短时傅里叶变换,并反转变换以恢复原始信号:scipy.signal.stftscipy.signal.istft。 此实现还修复了以前在请求复数输出数据时 scipy.signal.spectrogram 输出不正确的问题。

添加了函数 scipy.signal.sosfreqz,用于从二阶节计算频率响应。

添加了函数 scipy.signal.unit_impulse,用于方便地生成脉冲函数。

添加了函数 scipy.signal.iirnotch,用于设计二阶 IIR 陷波滤波器,该滤波器可用于从信号中消除频率分量。 添加了双函数 scipy.signal.iirpeak,用于计算二阶 IIR 峰值(共振)滤波器的系数。

添加了函数 scipy.signal.minimum_phase,用于将线性相位 FIR 滤波器转换为最小相位。

当在某些 n 维数组上运算时,如果 n > 1,则函数 scipy.signal.upfirdnscipy.signal.resample_poly 现在速度明显更快。当要过滤的轴上的数组大小较小(约为 < 1k 个样本)时,计算时间的缩短幅度最大。

scipy.fftpack 改进#

快速傅里叶变换例程现在接受 np.float16 输入,并将它们向上转换为 np.float32。 以前,它们会引发错误。

scipy.cluster 改进#

scipy.cluster.hierarchy.linkage"centroid""median" 方法已显著加速。 解决了在大型输入数据(超过 16 GB)上使用 linkage 的长期存在的问题。

scipy.sparse 改进#

添加了函数 scipy.sparse.save_npzscipy.sparse.load_npz,为某些稀疏格式提供简单的序列化。

更新了类 bsr_matrixcsc_matrixcsr_matrixprune 方法,以便在特定条件下重新分配支持数组,从而减少内存使用。

向类 coo_matrixcsc_matrixcsr_matrixbsr_matrix 添加了方法 argminargmax

新函数 scipy.sparse.csgraph.structural_rank 计算具有给定稀疏模式的图的结构秩。

新函数 scipy.sparse.linalg.spsolve_triangular 求解具有三角左侧矩阵的稀疏线性系统。

scipy.special 改进#

来自 scipy.special 的通用函数的标量类型版本可通过从新模块 scipy.special.cython_special 进行 cimport 在 Cython 空间中获得。 对于标量参数,这些标量函数预计会比通用函数快得多。 有关详细信息,请参阅 scipy.special 教程。

函数 scipy.special.geterrscipy.special.seterr 以及上下文管理器 scipy.special.errstate 提供了对特殊函数错误的更好控制。

正交多项式根函数的名称已更改为与与正交多项式相关的其他函数保持一致。 例如,scipy.special.j_roots 已重命名为 scipy.special.roots_jacobi,以便与相关函数 scipy.special.jacobiscipy.special.eval_jacobi 保持一致。 为了保持向后兼容性,旧名称已保留为别名。

Wright Omega 函数实现为 scipy.special.wrightomega

scipy.stats 改进#

添加了函数 scipy.stats.weightedtau。它提供了 Kendall’s tau 的加权版本。

新类 scipy.stats.multinomial 实现了多项式分布。

新类 scipy.stats.rv_histogram 从分箱数据样本构建具有分段线性 CDF 的连续单变量分布。

新类 scipy.stats.argus 实现了 Argus 分布。

scipy.interpolate 改进#

新类 scipy.interpolate.BSpline 表示样条曲线。 BSpline 对象包含节点和系数,并且可以评估样条曲线。此格式与 FITPACK 一致,因此可以执行例如

>>> t, c, k = splrep(x, y, s=0)
>>> spl = BSpline(t, c, k)
>>> np.allclose(spl(x), y)

spl* 函数, scipy.interpolate.splev, scipy.interpolate.splint, scipy.interpolate.splderscipy.interpolate.splantider,为了向后兼容,接受 BSpline 对象和 (t, c, k) 元组。

对于多维样条曲线,c.ndim > 1BSpline 对象与分段多项式 scipy.interpolate.PPoly 一致。这意味着 BSpline 对象与 scipy.interpolate.splprep 不立即一致,并且不能 执行 >>> BSpline(*splprep([x, y])[0])。有关精确等效的示例,请查阅 scipy.interpolate 测试套件。

在新代码中,最好使用 scipy.interpolate.BSpline 对象,而不是直接操作 (t, c, k) 元组。

新函数 scipy.interpolate.make_interp_spline 根据数据点和边界条件构造插值样条曲线。

新函数 scipy.interpolate.make_lsq_spline 根据数据点构造最小二乘样条逼近。

scipy.integrate 改进#

现在 scipy.integrate.fixed_quad 支持向量值函数。

已弃用的功能#

scipy.interpolate.splmakescipy.interpolate.splevalscipy.interpolate.spline 已弃用。splmake/spleval 使用的格式与 splrep/splev 不一致,这让用户感到困惑。

scipy.special.errprint 已弃用。 scipy.special.seterr 中提供了改进的功能。

不推荐使用使用所选指标不需要的参数调用 scipy.spatial.distance.pdistscipy.spatial.distance.cdist。此外,指标 “old_cosine”“old_cos” 已弃用。

向后不兼容的更改#

已删除已弃用的 scipy.weave 子模块。

scipy.spatial.distance.squareform 现在返回与输入具有相同 dtype 的数组,而不是始终返回 float64。

scipy.special.errprint 现在返回一个布尔值。

函数 scipy.signal.find_peaks_cwt 现在返回一个数组,而不是列表。

scipy.stats.kendalltau 现在在输入包含平局的情况下计算正确的 p 值。p 值也与 scipy.stats.mstats.kendalltau 和 R 计算的 p 值相同。如果输入不包含平局,则与之前的实现相比没有变化。

函数 scipy.linalg.block_diag 将不再忽略零大小的矩阵。相反,它将插入适当大小的零行或零列。有关更多详细信息,请参阅 gh-4908。

其他更改#

SciPy wheels 现在将在所有平台上报告它们对 numpy 的依赖。进行此更改的原因是,Numpy wheels 可用,并且 pip 升级行为最终正在朝着更好的方向发展(对于 pip >= 8.2,请使用 --upgrade-strategy=only-if-needed;该行为将在下一个主要版本的 pip 中成为默认行为)。

与之前的 scipy 版本相比,使用 kind="cubic""quadratic"scipy.interpolate.interp1d 返回的数值可能会发生变化。如果您的代码依赖于特定的数值(即,插值器的实现细节),您可能需要仔细检查您的结果。

作者#

  • @endolith

  • Max Argus +

  • Hervé Audren

  • Alessandro Pietro Bardelli +

  • Michael Benfield +

  • Felix Berkenkamp

  • Matthew Brett

  • Per Brodtkorb

  • Evgeni Burovski

  • Pierre de Buyl

  • CJ Carey

  • Brandon Carter +

  • Tim Cera

  • Klesk Chonkin

  • Christian Häggström +

  • Luca Citi

  • Peadar Coyle +

  • Daniel da Silva +

  • Greg Dooper +

  • John Draper +

  • drlvk +

  • David Ellis +

  • Yu Feng

  • Baptiste Fontaine +

  • Jed Frey +

  • Siddhartha Gandhi +

  • Wim Glenn +

  • Akash Goel +

  • Christoph Gohlke

  • Ralf Gommers

  • Alexander Goncearenco +

  • Richard Gowers +

  • Alex Griffing

  • Radoslaw Guzinski +

  • Charles Harris

  • Callum Jacob Hays +

  • Ian Henriksen

  • Randy Heydon +

  • Lindsey Hiltner +

  • Gerrit Holl +

  • Hiroki IKEDA +

  • jfinkels +

  • Mher Kazandjian +

  • Thomas Keck +

  • keuj6 +

  • Kornel Kielczewski +

  • Sergey B Kirpichev +

  • Vasily Kokorev +

  • Eric Larson

  • Denis Laxalde

  • Gregory R. Lee

  • Josh Lefler +

  • Julien Lhermitte +

  • Evan Limanto +

  • Jin-Guo Liu +

  • Nikolay Mayorov

  • Geordie McBain +

  • Josue Melka +

  • Matthieu Melot

  • michaelvmartin15 +

  • Surhud More +

  • Brett M. Morris +

  • Chris Mutel +

  • Paul Nation

  • Andrew Nelson

  • David Nicholson +

  • Aaron Nielsen +

  • Joel Nothman

  • nrnrk +

  • Juan Nunez-Iglesias

  • Mikhail Pak +

  • Gavin Parnaby +

  • Thomas Pingel +

  • Ilhan Polat +

  • Aman Pratik +

  • Sebastian Pucilowski

  • Ted Pudlik

  • puenka +

  • Eric Quintero

  • Tyler Reddy

  • Joscha Reimer

  • Antonio Horta Ribeiro +

  • Edward Richards +

  • Roman Ring +

  • Rafael Rossi +

  • Colm Ryan +

  • Sami Salonen +

  • Alvaro Sanchez-Gonzalez +

  • Johannes Schmitz

  • Kari Schoonbee

  • Yurii Shevchuk +

  • Jonathan Siebert +

  • Jonathan Tammo Siebert +

  • Scott Sievert +

  • Sourav Singh

  • Byron Smith +

  • Srikiran +

  • Samuel St-Jean +

  • Yoni Teitelbaum +

  • Bhavika Tekwani

  • Martin Thoma

  • timbalam +

  • Svend Vanderveken +

  • Sebastiano Vigna +

  • Aditya Vijaykumar +

  • Santi Villalba +

  • Ze Vinicius

  • Pauli Virtanen

  • Matteo Visconti

  • Yusuke Watanabe +

  • Warren Weckesser

  • Phillip Weinberg +

  • Nils Werner

  • Jakub Wilk

  • Josh Wilson

  • wirew0rm +

  • David Wolever +

  • Nathan Woods

  • ybeltukov +

  • G Young

  • Evgeny Zhurko +

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

为 0.19.0 版本关闭的问题#

  • #1767: __fitpack.h 中的函数定义应该移动。(Trac #1240)

  • #1774: _kmeans 在大型阈值上会出错。(Trac #1247)

  • #2089: 整数溢出导致链接函数在处理大型数据时出现段错误…

  • #2190: 奇数长度的窗口函数应该总是对称的吗?…

  • #2251: scipy.linalg 中的 solve_discrete_are 函数(有时)无法求解…

  • #2580: scipy.interpolate.UnivariateSpline (或它的新超类)…

  • #2592: scipy.stats.anderson 假设为 gumbel_l

  • #3054: scipy.linalg.eig 不处理无限特征值

  • #3160: 多项分布 pmf / logpmf

  • #3904: scipy.special.ellipj 在四分之一周期处的 dn 值错误

  • #4044: kmeans 中的代码本初始化不一致

  • #4234: scipy.signal.flattop 文档没有列出源…

  • #4831: __quadpack.h 中的 C 代码存在 Bug

  • #4908: Bug:scipy.sparse.block_diag 中对块维度进行不必要的有效性检查

  • #4917: Bug:使用 ix_ 索引稀疏矩阵时出错

  • #4938: 关于扩展 ndimage 的文档需要更新。

  • #5056: 稀疏矩阵按元素与稠密矩阵相乘会返回稠密矩阵…

  • #5337: correlate 的文档中的公式错误

  • #5537: 在 io.netcdf 中使用 OrderedDict

  • #5750: [doc] KDTree, cKDTree 中缺少数据索引值

  • #5755: scipy.stats.kendalltau() 中的 p 值计算在 … 中损坏

  • #5757: Bug:signal.spectrogram 的复数输出不正确

  • #5964: ENH:将 scipy.special 函数的标量版本公开给 cython

  • #6107: scipy.cluster.hierarchy.single 在处理 2**16 … 时出现段错误

  • #6278: optimize.basinhopping 应该接受一个 RandomState 对象

  • #6296: InterpolatedUnivariateSpline:当 w 未指定时,check_finite 失败

  • #6306: Anderson-Darling 的错误结果

  • #6314: scipy.stats.kendaltau() p 值与 R,SPSS … 不一致

  • #6340: Curve_fit 的边界和 maxfev

  • #6377: expm_multiply,使用 start,stop 等参数时,复数矩阵不起作用…

  • #6382: optimize.differential_evolution 的停止准则不直观…

  • #6391: 全局基准测试在 600 秒时超时。

  • #6397: mmwrite 在处理大型(但仍然是 64 位)整数时出错

  • #6413: scipy.stats.dirichlet 计算多元高斯微分…

  • #6428: scipy.stats.mstats.mode 修改输入

  • #6440: 找出 scipy.special Cython API 的 ABI 中断策略

  • #6441: 使用 Qhull 进行半空间交集:段错误

  • #6442: scipy.spatial:在增量模式下,不会重新计算体积

  • #6451: scipy.cluster.hierarchy.to_tree 的文档令人困惑…

  • #6490: interp1d (kind=zero) 为最右边的插值返回错误的值…

  • #6521: scipy.stats.entropy 计算 KL 散度

  • #6530: scipy.stats.spearmanr 对 NaN 的处理方式出乎意料

  • #6541: 测试运行器不运行 scipy._lib/tests?

  • #6552: Bug:当使用 cmin/cmax 时,misc.bytescale 返回的结果出乎意料…

  • #6556: 如果 min(v) >= pi,则 RectSphereBivariateSpline(u, v, r) 失败

  • #6559: Differential_evolution 的 maxiter 导致内存溢出

  • #6565: 可以改进频谱函数的覆盖率

  • #6628: 二项式文档中的参数名称不正确

  • #6634: 为 linalg.solve 病态条件公开 LAPACK 的 xGESVX 系列…

  • #6657: scipy.special.sph_harm 的文档令人困惑

  • #6676: optimize:`minimize(…,…` 返回的雅可比矩阵的大小不正确

  • #6681: 添加一个新的上下文管理器来包装 scipy.special.seterr

  • #6700: Bug:scipy.io.wavfile.read 停留在无限循环中,警告 wav …

  • #6721: 当 N > 64 时,scipy.special.chebyt(N) 抛出 “TypeError”

  • #6727: scipy.stats.norm.fit 的文档不正确

  • #6764: scipy.spatial.Delaunay 的文档部分不正确

  • #6811: scipy.spatial.SphericalVoronoi 在处理大量点时失败

  • #6841: 当设置 nan_policy='omit' 时,spearmanr 失败

  • #6869: 目前在 gaussian_kde 中,logpdf 函数的计算是 …

  • #6875: SLSQP 对无效边界的处理不一致

  • #6876: Python 停止工作(段错误?)在处理最小/最大滤波器 …

  • #6889: dblquad 在 scipy 0.17.1 和 0.18.1 版本下给出不同的结果

  • #6898: Bug:dblquad 忽略错误容限

  • #6901: 使用复数值在 CSR 格式中求解稀疏线性系统

  • #6903: spatial.distance.pdist 文档字符串中的问题

  • #6917: 将 drop_rule 传递给 scipy.sparse.linalg.spilu 时出现问题

  • #6926: LowLevelCallable 的签名不匹配

  • #6961: Scipy 包含指向 /usr/bin/python 和 /bin/bash 的 shebang…

  • #6972: Bug:special:generate_ufuncs.py 已损坏

  • #6984: 断言引发 test_ill_condition_warning 的测试失败

  • #6990: Bug:sparse:sparse.linalg.eigsk 参数的文档错误

  • #6991: linregress() 中的除零错误

  • #7011: rv_continuous.fit() 中可能的速度改进

  • #7015: Python 3.5 和 numpy master 中的测试失败

  • #7055: SciPy 0.19.0rc1 在 Windows 上的测试错误和失败

  • #7096: macOS 上 test_solve_continuous_are 的测试失败

  • #7100: 0.19.0rc2 中的 test_distance.test_Xdist_deprecated_args 测试错误

0.19.0 版本的拉取请求#

  • #2908: Scipy 1.0 路线图

  • #3174: 添加 b 样条

  • #4606: ENH:添加单位脉冲波形函数

  • #5608: 添加选择更快卷积方法的关键字参数

  • #5647: ENH:cKDTree 中更快的 count_neighour / + 加权输入数据

  • #6021: Netcdf 追加

  • #6058: ENH:scipy.signal - 添加 stft 和 istft

  • #6059: ENH:更精确的 zpk 系统 signal.freqresp

  • #6195: ENH:special 的 Cython 接口

  • #6234: DOC:修复了 ward() 帮助中的拼写错误

  • #6261: ENH:为 signal.normalize 添加文档字符串并清理代码

  • #6270: MAINT:special:为 cdflib 添加测试

  • #6271: 修复 scipy.cluster.hierarchy.is_isomorphic

  • #6273: optimize:将 while 循环重写为 for 循环

  • #6279: MAINT:Bessel 调整

  • #6291: 修复 gh-6219:从 genextreme 分布中删除运行时警告

  • #6294: STY:stats/_continuous_distns.py 中的一些 PEP8 和清理导入

  • #6297: 澄清 misc/__init__.py 中的文档

  • #6300: ENH:sparse:放宽 diags 处理空输入时的输入验证

  • #6301: Bug:标准化关于可选权重的 check_finite 行为,…

  • #6303: 修复 _lazyselect 文档字符串中的示例。

  • #6307: MAINT:进一步改进 gammainc/gammaincc

  • #6308: 澄清超几何分布的文档。

  • #6309: Bug:stats:改进 Anderson-Darling 统计量的计算。

  • #6315: ENH:PPoly 中 x 的降序排列

  • #6317: 增强: stats: 为 stats.median_test 添加 nan_policy 支持

  • #6321: 测试: 修复测试名称中的拼写错误

  • #6328: 增强: sosfreqz

  • #6335: 在 linregress 之外定义 LinregressResult

  • #6337: 在 anderson 测试中,添加了对右偏 Gumbel 分布的支持。

  • #6341: 接受 curve_fit 最大函数调用次数的几种拼写...

  • #6342: 文档: cluster: 澄清 hierarchy.linkage 的用法

  • #6352: 文档: 从其自身的“另请参阅”中删除 brentq

  • #6362: 增强: stats: 在 Weibull 分布中使用 sf、logsf 等的显式公式...

  • #6369: 维护: special: 为 hyp0f1_complex 添加注释

  • #6375: 添加了多项分布。

  • #6387: 维护: special: 提高 ellipj 的 dn 在四分之一处的精度...

  • #6388: BenchmarkGlobal - 使其在 Python3 中工作

  • #6394: 增强: scipy.sparse: 为稀疏矩阵添加保存和加载函数

  • #6400: 维护: 将全局基准测试运行从 setup_cache 移动到 track_all

  • #6403: 增强: basinhopping 的 seed 参数。关闭 #6278

  • #6404: 增强: signal: 添加了 irrnotch 和 iirpeak 函数。

  • #6406: 增强: special: 将 sici/shichi 扩展到复数参数

  • #6407: 增强: 窗口函数不应接受非整数或负数...

  • #6408: 维护: _differentialevolution 现在使用 _lib._util.check_random_state

  • #6427: 维护: 修复 gmpy 构建并测试 mpmath 是否使用 gmpy

  • #6439: 维护: ndimage: 更新回调函数 c api

  • #6443: 错误: 修复增量模式下的体积计算

  • #6447: 修复问题 #6413 - entropy 函数中的微小文档修复...

  • #6448: 增强: 为 Qhull 添加半空间模式

  • #6449: 增强: differential_evolution 终止的 rtol 和 atol 修复...

  • #6453: 文档: 在相似函数之间添加一些“另请参阅”链接

  • #6454: 文档: linalg: 澄清 ordqz 中的可调用签名

  • #6457: 增强: spatial: 在 squareform 中启用非双精度数据类型

  • #6459: 错误: expm_multiply 未正确处理复数矩阵...

  • #6465: 测试 文档 窗口文档、测试等。

  • #6469: 增强: linalg: 更好地处理 eig/eigvals 中的无限特征值

  • #6475: 文档: 使用 NaN 调用 interp1d/interp2d 是未定义的

  • #6477: 记录 optimize.py 中的幻数

  • #6481: 测试: 抑制 test_windows 中的一些警告

  • #6485: 文档: spatial: 更正 procrustes 中的拼写错误

  • #6487: 修复 pdist 文档字符串中的 Bray-Curtis 公式

  • #6493: 增强: 为 scipy.optimize.curve_fit 添加协方差功能

  • #6494: 增强: stats: 使用 log1p() 来改进一些计算。

  • #6495: 错误: 对于单链接聚类,使用 MST 算法而不是 SLINK

  • #6497: 合并: 添加 minimum_phase 滤波器函数

  • #6505: 将 scipy.signal.resample 窗口形状重置为 1-D

  • #6507: 错误: linkage: 如果 y 包含非有限元素,则引发异常

  • #6509: 增强: _lib: 为底层回调函数添加通用机制

  • #6520: scipy.sparse.base.__mul__ 具有“shape”的非 numpy/scipy 对象...

  • #6522: 在 entropy 中用 rel_entr 替换 kl_div

  • #6524: 文档: 将 next_fast_len 添加到函数列表

  • #6527: 文档: 发布说明以反映 optimize.curve_fit 中的新协方差功能

  • #6532: 增强: 简化 _cos_win,记录它,添加对称/周期性参数

  • #6535: 维护: sparse.csgraph: 更新旧的 cython 循环

  • #6540: 文档: 添加到正交多项式的文档中

  • #6544: 测试: 确保 scipy._lib 的测试由 scipy.test() 运行

  • #6546: 更新了 stats.linregress 的文档字符串

  • #6553: 提交了我最初为 scipy.signal.cspline 提交的更改...

  • #6561: 错误: 修改 signal.find_peaks_cwt() 以返回数组并接受...

  • #6562: 文档: 负二项式分布说明

  • #6563: 维护: 在需要 numpy 时更加宽松

  • #6567: 维护: 在 differential_evolution 修复中使用 xrange 进行迭代...

  • #6572: 错误: “sp.linalg.solve_discrete_are” 对于随机数据失败

  • #6578: 错误: misc: 允许 bytescale 中的 cmin/cmax 和 low/high 参数

  • #6581: 修复一些不幸的拼写错误

  • #6582: 维护: linalg: 使 ordqz 中对无限特征值的处理...

  • #6585: 文档: interpolate: 更正到 ndimage 的 seealso 链接

  • #6588: 更新 scipy.spatial.distance_matrix 的文档字符串

  • #6592: 文档: 在 mode 中将“first”替换为“smallest”

  • #6593: 维护: 删除 scipy.weave 子模块

  • #6594: 文档: distance.squareform: 修复 html 文档,添加有关 dtype 的说明...

  • #6598: [文档] 修复 medfilt2d 中不正确的错误消息

  • #6599: 维护: linalg: 重新开启一个 solve_discrete_are 测试

  • #6600: 文档: 将 SOS 目标添加到路线图中

  • #6601: 依赖: 将最低 numpy 版本提高到 1.8.2

  • #6605: 维护: “new” 模块已弃用,请勿使用它

  • #6607: 文档: 添加有关 numpy 和 pip 的 wheel 依赖项更改的说明...

  • #6609: 修复 #6602 - 文档中的拼写错误

  • #6616: 增强: 连续和离散 Riccati 求解器的泛化...

  • #6621: 文档: 改进 cluster.hierarchy 文档字符串。

  • #6623: CS 矩阵修剪方法应从大型未修剪数组复制数据

  • #6625: 文档: special: 完成 eval_* 函数的文档

  • #6626: 测试: special: 静音一些弃用警告

  • #6631: 修复离散分布的参数名称文档

  • #6632: 维护: stats: 将一些 special 实例更改为 sc

  • #6633: 维护: refguide: py2k 长整数等于 py3k 整数

  • #6638: 维护: 更改 cluster.linkage 中的类型声明,防止溢出

  • #6640: 错误: 修复 cluster.vq.kmeans 中使用的重复值问题

  • #6641: 错误: 修复 cluster.vq.kmeans 在大阈值下的极端情况

  • #6643: 维护: 清理树状图的截断模式

  • #6645: 维护: special: 重命名 *\_roots 函数

  • #6646: 维护: 清理 mpmath 导入

  • #6647: 文档: 为 pdist 的 Mahalanobis 描述添加 sqrt

  • #6648: 文档: special: 在教程中添加一个关于 cython_special 的部分

  • #6649: 增强: 添加了 scipy.spatial.distance.directed_hausdorff

  • #6650: 文档: 为 DOI 和 arXiv 链接添加 Sphinx 角色

  • #6651: 错误: mstats: 确保 mode(…, None) 不会修改其输入

  • #6652: 文档: special: 在教程中添加关于 special 中没有的函数的部分

  • #6653: 增强: special: 添加 Wright Omega 函数

  • #6656: 增强: 不强制使用 cdist 中的自定义度量将输入转换为 double...

  • #6658: 更快/更短的代码用于不一致计算

  • #6659: 文档: special: 使 __init__ 摘要和 html 摘要匹配

  • #6661: general.rst: 修复拼写错误

  • #6664: 测试: 频谱函数的窗口校正因子

  • #6665: [文档] RectSphereBivariateSpline 中 v 的条件

  • #6668: 文档: 提及质心的负质量

  • #6675: 维护: special: 移除过时的 README

  • #6677: 错误修复:修复 p 值的计算。

  • #6679: 错误修复:optimize: 为方法 ‘SLSQP’ 返回正确的雅可比矩阵...

  • #6680: 增强:向 sparse.csgraph 添加结构秩

  • #6686: 测试:为 SphericalVoronoi 添加了 Airspeed Velocity 基准测试

  • #6687: 文档:在开发者指南中添加“决定新功能”章节。

  • #6691: 增强:当 fmin_slsqp obj 不返回标量时,给出更清晰的错误提示

  • #6702: 测试:为 scipy.spatial.distance.cdist 添加了 airspeed velocity 基准测试

  • #6707: 测试:interpolate: 测试 fitpack 包装器,而不是 _impl

  • #6709: 测试:修复了 32 位系统上的一些测试失败

  • #6711: 维护:将函数定义从 __fitpack.h 移动到 _fitpackmodule.c

  • #6712: 维护:清理 stats.morestats 中的愿望清单和版权声明。

  • #6715: 文档:使用 BSpline 等更新发行说明。

  • #6716: 维护:scipy.io.wavfile: 尝试读取时没有无限循环...

  • #6717: 一些样式清理

  • #6723: 错误修复:special: 在进行原位乘法之前转换为浮点数...

  • #6726: 解决 interp1d 中的性能回归问题

  • #6728: 文档:使 integrate 教程中的代码示例可复制粘贴

  • #6731: 文档:scipy.optimize:为包装复数值函数添加了一个示例...

  • #6732: 维护:cython_special: 移除 errprint

  • #6733: 维护:special: 修复一些 pyflakes 警告

  • #6734: 文档:sparse.linalg: 修复 bicgstab 文档中的矩阵描述

  • #6737: 构建:更新 cythonize.py 以检测 pxi 文件中的更改

  • #6740: 文档:special: 对文档字符串进行一些小修复

  • #6741: 维护:删除 interpolate.py 中的死代码

  • #6742: 错误修复:修复 linalg.block_diag 以支持零大小的矩阵。

  • #6744: 增强:interpolate: 使 PPoly.from_spline 接受 BSpline 对象

  • #6746: 文档:special: 阐明 sph_harm / lpmv 中 Condon-Shortley 相位的使用

  • #6750: 增强:sparse: 避免在广播的元素级乘法上进行稠密化

  • #6751: sinm 文档解释了 cosm

  • #6753: 增强:special: 允许更精细的错误处理

  • #6759: 将 logsumexp 和 pade 从 scipy.misc 移动到 scipy.special 并...

  • #6761: 增强:稀疏矩阵的 argmax 和 argmin 方法

  • #6762: 文档:改进稀疏矩阵的文档字符串

  • #6763: 增强:加权 tau

  • #6768: 增强:cython 化球形 Voronoi 区域多边形顶点排序

  • #6770: Delaunay 类文档的更正

  • #6775: 增强:将 LAPACK “专家” 例程与条件警告集成...

  • #6776: 维护:移除琐碎的 f2py 警告

  • #6777: 文档:更新 rv_continuous.fit 文档。

  • #6778: 维护:cluster.hierarchy:改进了错误消息的措辞

  • #6786: 构建:将最低 Cython 版本提高到 0.23.4

  • #6787: 文档:扩展 0.19.0 版本中 linalg.block_diag 的更改...

  • #6789: 增强:为 norm.fit 添加更多文档

  • #6790: 维护:修复 nn_chain 链接算法中的潜在问题

  • #6791: 文档:向 scipy.ndimage.fourier 添加示例

  • #6792: 文档:修复一些 numpydoc / Sphinx 问题。

  • #6793: 维护:修复将函数移出 misc 后出现的循环导入

  • #6796: 测试:测试导入每个子模块。 gh-6793 的回归测试。

  • #6799: 增强:stats:Argus 分布

  • #6801: 增强:stats:直方图分布

  • #6803: 测试:确保 _build_utils 的测试已运行。

  • #6804: 维护:loggamma 中的更多修复

  • #6806: 增强:用于 ‘centroid’ 和 ‘median’ 方法的更快链接

  • #6810: 增强:加快 n 维数组的 upfirdn 和 resample_poly

  • #6812: 测试:添加了 ConvexHull asv 基准测试代码

  • #6814: 增强:在不同维度中使用不同的外推模式...

  • #6826: 信号频谱窗口默认修复

  • #6828: 错误修复:SphericalVoronoi 空间复杂度 (修复 #6811)

  • #6830: RealData 文档字符串更正

  • #6834: 文档:为 skewtest 函数添加了参考。请参阅 #6829

  • #6836: 文档:在接受函数的文档字符串中添加了 mode=‘mirror’...

  • #6838: 维护:sparse: 开始移除旧的 BSR 方法

  • #6844: 当输入不是 ndarray 时,处理不兼容的维度...

  • #6847: 向黄金搜索添加了 maxiter。

  • #6850: 错误修复:为可选参数 scipy.stats.spearmanr 添加了检查

  • #6858: 维护:移除冗余测试

  • #6861: 弃用:修复 Python 3.6 中已弃用的转义序列。

  • #6862: 文档:dx 应该是浮点数,而不是整数

  • #6863: 更新了 curve_fit 文档

  • #6866: 文档:为 j1 添加了一些参考 spherical_jn 的文档

  • #6867: 文档:cdist 将长示例列表移至“注释”部分

  • #6868: 错误修复:使 stats.mode 在空数组时返回 ModeResult 命名元组...

  • #6871: 更正了文档。

  • #6874: 增强:基于 logsumexp 的 gaussian_kde.logpdf

  • #6877: 错误修复:ndimage: 防止全零的足迹

  • #6881: python 3.6

  • #6885: 向量化 integrate.fixed_quad

  • #6886: 修复了错别字

  • #6891: 测试:由于测试收紧,修复 linalg.dare/care 的失败...

  • #6892: 文档:修复了一些 Sphinx 错误。

  • #6894: 测试:为 scipy.spatial.Voronoi 添加了 asv 基准测试

  • #6908: 错误修复:修复 spsolve 中复数输入的返回数据类型

  • #6909: 增强:fftpack: 为 float16 输入使用 float32 例程。

  • #6911: 为 binned_statistic 添加了 min/max 支持

  • #6913: 修复 6875: SLSQP 对所有无效边界引发 ValueError。

  • #6914: 文档:GH6903 更新 Spatial.distance.pdist 的文档

  • #6916: 维护:修复 32 位 Python 的一些问题

  • #6924: 构建:更新 scipy.LowLevelCallable 的 Bento 构建

  • #6932: 增强:在 io.netcdf 中使用 OrderedDict。关闭 gh-5537

  • #6933: 错误修复:修复 32 位 Python 上的 LowLevelCallable 问题。

  • #6936: 错误修复:sparse: 正确处理大小为 1 的 2D 索引

  • #6938: 测试:修复 32 位 Python 上 special 中的测试失败。

  • #6939:向 cKDTree 文档字符串添加了属性列表

  • #6940:提高了 dok_matrix.tocoo 的效率

  • #6942:文档:在 io.arff 文档字符串中添加了指向 liac-arff 包的链接。

  • #6943:维护:文档字符串修复以及对 linalg.solve 的额外测试

  • #6944:文档:向 integrate 中添加了带有带状雅可比矩阵的 odeint 示例…

  • #6946:增强:基于 betaln 的 hypergeom.logpmf

  • #6947:测试:加速距离测试

  • #6948:弃用:弃用 linalg.solve 中的关键字“debug”

  • #6950:错误:正确处理 MMIO 中的大整数(修复 #6397)

  • #6952:增强:在 LowLevelCallable 中进行小的用户友好性清理

  • #6956:文档:改进了 convolve 的“output”关键字的描述

  • #6957:增强:sparse.bmat 中提供更丰富信息的错误

  • #6962:Shebang 修复

  • #6964:文档:注意 argmin/argmax 的添加

  • #6965:错误:修复在 dblquad 和 tplquad 中传递误差容限的问题。

  • #6971:修复 signaltools.correlate 的文档字符串

  • #6973:抑制 scipy.ndimage.interpolation.zoom() 中预期的 numpy 警告

  • #6975:错误:special:修复 generate_ufuncs.py 中的正则表达式

  • #6976:更新 griddata 的文档字符串

  • #6978:避免在缩放因子计算中除以零

  • #6979:错误:ARE 求解器没有仔细检查广义情况

  • #6985:增强:sparse:添加 scipy.sparse.linalg.spsolve_triangular

  • #6994:维护:spatial:更新绘图工具

  • #6995:文档:sparse.linalg.eigs 中 k 的错误文档,参见 #6990

  • #6997:测试:用不太奇异的示例更改了测试

  • #7000:文档:阐明 interp1d 的“zero”参数

  • #7007:错误:修复了 linregress() 中 2 个数据点的除零错误

  • #7009:错误:修复了将 drop_rule 传递给 scipy.sparse.linalg.spilu 的问题

  • #7012:_distn_infrastructure.py 中的速度提升

  • #7014:修复拼写错误:添加一个单引号以修复一个轻微的拼写错误

  • #7021:维护:stats:使用 np.finfo 中的机器常量,而不是 machar

  • #7026:维护:更新 .mailmap

  • #7032:修复 rv_histogram 文档的布局

  • #7035:文档:更新 0.19.0 发行说明

  • #7036:增强:向 signal.stft 添加更多边界选项

  • #7040:测试:stats:跳过速度过慢的测试

  • #7042:维护:sparse:加速 setdiag 测试

  • #7043:维护:重构和代码清理 Xdist

  • #7053:修复 msvc 9 和 10 的编译错误

  • #7060:文档:用 #7043 和 #6656 更新了发行说明

  • #7062:维护:将默认的 STFT 边界 kwarg 更改为“zeros”

  • #7064:修复 ValueError:路径位于挂载“X:”上,从挂载“D:”开始…

  • #7067:测试:修复 PermissionError:Windows 上出现 [Errno 13] 权限被拒绝

  • #7068:测试:修复 UnboundLocalError:引用了局部变量“data”…

  • #7069:修复 OverflowError:Python int 过大,无法转换为 C long…

  • #7071:测试:抑制 stats.spearmanr 的 nan 测试的 RuntimeWarning

  • #7072:修复 OverflowError:Python int 过大,无法转换为 C long…

  • #7084:测试:linalg:提高 test_falker 中的容差

  • #7095:测试:linalg:提高 test_falker 中更多的容差

  • #7101:测试:放宽 solve_continuous_are 测试用例 2 和 12

  • #7106:错误:停止 cdist “correlation” 修改输入

  • #7116:向 0.19.0rc2 的反向移植