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_special,为 scipy.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 具有数值上更稳定的算法。这些函数还可以求解广义代数矩阵Riccati方程。此外,两者都增加了一个 balanced 关键字来开启或关闭平衡功能。

scipy.spatial 改进#

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

scipy.spatial.SphericalVoronoi 可以处理超过 200k 个点(至少 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滤波器转换为最小相位。

函数 scipy.signal.upfirdnscipy.signal.resample_poly 在处理某些 n 维数组(n > 1)时,现在显著加快了速度。在沿要过滤的轴的数组大小较小(约 <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 方法已更新,在某些条件下重新分配后备数组,从而减少内存使用。

方法 argminargmax 已添加到类 coo_matrixcsc_matrixcsr_matrixbsr_matrix 中。

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

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

scipy.special 改进#

标量、类型化的通用函数版本可以从 scipy.special 通过 cimport 从新模块 scipy.special.cython_special 中在 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.splevscipy.interpolate.splintscipy.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.splmake, scipy.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 现在返回与输入相同数据类型的数组,而不是总是返回 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 的 wheel 现在将在所有平台上报告它们对 numpy 的依赖。这一改变是因为 Numpy 的 wheel 已经可用,并且因为 pip 的升级行为终于有所改善(对于 pip >= 8.2,使用 --upgrade-strategy=only-if-needed;该行为将成为 pip 下一个主要版本的默认行为)。

使用 scipy.interpolate.interp1d 时,若 kind="cubic""quadratic",返回的数值可能与之前的 scipy 版本有所不同。如果你的代码依赖于特定的数值(即插值器的实现细节),建议你再次检查结果。

作者#

  • @endolith

  • 马克斯·阿尔格斯 +

  • 埃尔韦·奥德伦

  • 亚历山德罗·皮耶特罗·巴尔德利 +

  • 迈克尔·本菲尔德 +

  • 菲利克斯·伯肯坎普

  • 马修·布雷特

  • Per Brodtkorb

  • Evgeni Burovski

  • 皮埃尔·德·布伊尔

  • CJ 凯里

  • 布兰登·卡特 +

  • 蒂姆·塞拉

  • 克莱斯克·乔金

  • 克里斯蒂安·哈格斯特罗姆 +

  • 卢卡·奇蒂

  • Peadar Coyle +

  • 丹尼尔·达席尔瓦 +

  • 格雷格·杜珀 +

  • 约翰·德雷珀 +

  • drlvk +

  • 大卫·埃利斯

  • 余峰

  • Baptiste Fontaine +

  • 杰德·弗雷 +

  • 悉达多·甘地 +

  • Wim Glenn +

  • 阿卡什·戈埃尔 +

  • 克里斯托夫·戈尔克

  • Ralf Gommers

  • 亚历山大·贡采连科 +

  • 理查德·高尔斯 +

  • 亚历克斯·格里芬

  • Radoslaw Guzinski +

  • 查尔斯·哈里斯

  • 卡勒姆·雅各布·海斯 +

  • 伊恩·亨利克森

  • 兰迪·海登 +

  • 林赛·希尔特纳 +

  • Gerrit Holl +

  • 池田博树 +

  • jfinkels +

  • Mher Kazandjian +

  • 托马斯·凯克 +

  • keuj6 +

  • Kornel Kielczewski +

  • 谢尔盖·B·基尔皮切夫 +

  • 瓦西里·科科列夫 +

  • 埃里克·拉尔森

  • 丹尼斯·拉萨尔德

  • 格雷戈里·R·李

  • 乔什·莱夫勒 +

  • 朱利安·勒尔米特 +

  • Evan Limanto +

  • 刘金国 +

  • 尼古拉·马约罗夫

  • 乔治·麦克贝恩 +

  • Josue Melka +

  • 马修·梅洛

  • michaelvmartin15 +

  • Surhud More +

  • 布雷特·M·莫里斯 +

  • 克里斯·穆特尔 +

  • 保罗·纳特

  • 安德鲁·纳尔逊

  • 大卫·尼科尔森

  • 亚伦·尼尔森 +

  • 乔尔·诺特曼

  • nrnrk +

  • Juan Nunez-Iglesias

  • Mikhail Pak +

  • 加文·帕纳比 +

  • 托马斯·平格尔 +

  • 伊尔汗·波拉特 +

  • 阿曼·普拉提克 +

  • 塞巴斯蒂安·普西洛夫斯基

  • Ted Pudlik

  • puenka +

  • 埃里克·昆特罗

  • 泰勒·雷迪

  • Joscha Reimer

  • 安东尼奥·奥尔塔·里贝罗 +

  • 爱德华·理查兹

  • 罗马戒指 +

  • 拉斐尔·罗西 +

  • 科尔姆·瑞安 +

  • 萨米·萨洛宁 +

  • 阿尔瓦罗·桑切斯-冈萨雷斯 +

  • 约翰内斯·施密茨

  • 卡里·舒恩比

  • Yurii Shevchuk +

  • 乔纳森·西伯特 +

  • 乔纳森·塔姆莫·西伯特 +

  • 斯科特·西弗特 +

  • Sourav Singh

  • 拜伦·史密斯 +

  • Srikiran +

  • Samuel St-Jean +

  • Yoni Teitelbaum +

  • Bhavika Tekwani

  • 马丁·托马

  • timbalam +

  • Svend Vanderveken +

  • 塞巴斯蒂亚诺·维尼亚

  • 阿迪亚·维贾亚库马尔 +

  • 桑蒂·比利亚尔 +

  • Ze Vinicius

  • 保罗·维尔塔宁

  • 马泰奥·维斯孔蒂

  • 渡边 勇介 +

  • 沃伦·韦克瑟

  • 菲利普·温伯格 +

  • Nils Werner

  • Jakub Wilk

  • 乔什·威尔逊

  • wirew0rm +

  • 大卫·沃勒弗 +

  • 内森·伍兹

  • ybeltukov +

  • G 年轻

  • Evgeny Zhurko +

共有 121 人参与了此次发布。名字旁边带有“+”号的人首次贡献了补丁。这份名单是自动生成的,可能不完全完整。

0.19.0 版本关闭的问题#

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

  • #1774: _kmeans 在遇到大阈值时会崩溃 (Trac #1247)

  • #2089: 整数溢出导致在大规模…的linkage函数中发生段错误

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

  • #2251: scipy.linalg 中的 solve_discrete_are 有时无法解决…

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

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

  • #3054: scipy.linalg.eig 无法处理无穷大特征值

  • #3160: 多项分布的概率质量函数 / 对数概率质量函数

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

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

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

  • #4831: __quadpack.h 中的 C 代码错误

  • #4908: 错误: scipy.sparse.block_diag 中块维度不必要的有效性检查

  • #4917: BUG: 使用 ix_ 对稀疏矩阵进行索引时出错

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

  • #5056: 稀疏矩阵逐元素乘以稠密矩阵返回稠密矩阵…

  • #5337: 文档中关于互相关函数的公式有误

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

  • #5750: [文档] 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: misc.bytescale 在使用 cmin/cmax 时返回意外结果…

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

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

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

  • #6628: 二项分布文档中的参数名称错误

  • #6634: 暴露 LAPACK 的 xGESVX 系列用于 linalg.solve 病态…

  • #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: 测试_ill_condition_warning 的 assert raises 测试失败

  • #6990: BUG: 稀疏: sparse.linalg.eigsk 参数的文档有误

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

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

  • #7015: 使用Python 3.5和numpy主分支的测试失败

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

  • #7096: macOS 测试失败,针对 test_solve_continuous_are

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

0.19.0 的拉取请求#

  • #2908: Scipy 1.0 路线图

  • #3174: 添加B样条

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

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

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

  • #6021: Netcdf 追加

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

  • #6059: ENH: 对于zpk系统,signal.freqresp的精度更高

  • #6195: ENH: 特殊函数的Cython接口

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

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

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

  • #6271: 修复 scipy.cluster.hierarchy.is_isomorphic 的问题

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

  • #6279: MAINT: 贝塞尔函数微调

  • #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: ENH: stats: 为 stats.median_test 添加 nan_policy 支持

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

  • #6328: ENH: sosfreqz

  • #6335: 在 linregress 外部定义 LinregressResult

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

  • #6341: 接受 curve_fit 最大函数数的多种拼写…

  • #6342: DOC: cluster: 澄清 hierarchy.linkage 的使用

  • #6352: DOC: 从其自身的 ‘参见’ 中移除了 brentq

  • #6362: ENH: stats: 在weibull中使用sf、logsf等的显式公式…

  • #6369: MAINT: special: 在 hyp0f1_complex 中添加注释

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

  • #6387: MAINT: special: 提高 ellipj 的 dn 在四分之一处的精度…

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

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

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

  • #6403: ENH: 为 basinhopping 添加 seed 关键字参数。关闭 #6278

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

  • #6406: ENH: special: 扩展 sici/shichi 到复数参数

  • #6407: ENH: 窗口函数不应接受非整数或负数…

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

  • #6427: MAINT: 修复 gmpy 构建 & 测试 mpmath 使用 gmpy

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

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

  • #6447: 修复了 #6413 问题 - 熵函数中的小文档修复…

  • #6448: ENH: 添加半空间模式到 Qhull

  • #6449: ENH: 为 differential_evolution 终止修复 rtol 和 atol…

  • #6453: DOC: 在相似函数之间添加一些“参见”链接

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

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

  • #6459: BUG: 复数矩阵在 expm_multiply 中未被正确处理…

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

  • #6469: ENH: linalg: 在 eig/eigvals 中更好地处理无穷特征值

  • #6475: DOC: 使用 NaNs 调用 interp1d/interp2d 是未定义的

  • #6477: 在 optimize.py 中记录魔法数字

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

  • #6485: DOC: 空间: 修正procrustes中的拼写错误

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

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

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

  • #6495: BUG: 使用MST算法代替SLINK进行单链接聚类

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

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

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

  • #6509: ENH: _lib: 为低级回调函数添加通用机制

  • #6520: scipy.sparse.base.__mul__ 非 numpy/scipy 对象带有 ‘shape’…

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

  • #6524: DOC: 将 next_fast_len 添加到函数列表中

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

  • #6532: ENH: 简化 _cos_win,文档化它,添加对称/周期性参数

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

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

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

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

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

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

  • #6562: DOC: 负二项分布的澄清

  • #6563: MAINT: 在要求numpy时更加宽松

  • #6567: MAINT: 在 differential_evolution 中使用 xrange 进行迭代修复…

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

  • #6578: BUG: misc: 允许在 bytescale 中同时使用 cmin/cmax 和 low/high 参数

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

  • #6582: MAINT: linalg: 在 ordqz 中处理无穷大特征值…

  • #6585: DOC: 插值: 修正seealso链接至ndimage

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

  • #6592: DOC: 将 ‘first’ 替换为 ‘smallest’ 在 mode 中

  • #6593: MAINT: 移除 scipy.weave 子模块

  • #6594: DOC: distance.squareform: 修复html文档,添加关于数据类型的注释…

  • #6598: [DOC] 修复medfilt2d中错误的错误信息

  • #6599: MAINT: linalg: 重新启用 solve_discrete_are 测试

  • #6600: DOC: 在路线图中添加SOS目标

  • #6601: DEP: 将最小 numpy 版本提升至 1.8.2

  • #6605: MAINT: ‘new’ 模块已被弃用,请勿使用

  • #6607: DOC: 添加关于轮子对numpy和pip依赖变化的说明…

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

  • #6616: ENH: 连续和离散Riccati求解器的泛化…

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

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

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

  • #6626: TST: special: 静默一些弃用警告

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

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

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

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

  • #6640: BUG: 修复了在 cluster.vq.kmeans 中使用重复值的问题

  • #6641: BUG: 修复 cluster.vq.kmeans 中大阈值的边界情况

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

  • #6645: MAINT: special: 重命名 *_roots 函数

  • #6646: MAINT: 清理 mpmath 导入

  • #6647: DOC: 在Mahalanobis描述中添加sqrt

  • #6648: DOC: special: 在教程中添加关于 cython_special 的部分

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

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

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

  • #6652: DOC: special: 在教程中添加关于不在 special 中的函数的章节

  • #6653: ENH: special: 添加 Wright Omega 函数

  • #6656: ENH: 在使用自定义度量时,不要将输入强制转换为双精度…

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

  • #6659: DOC: 特殊: 使 __init__ 摘要和 html 摘要匹配

  • #6661: general.rst: 修正一个拼写错误

  • #6664: TST: 谱函数’窗口校正因子

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

  • #6668: DOC: 提及质心的负质量

  • #6675: MAINT: special: 移除过时的 README

  • #6677: BUG: 修复了p值的计算。

  • #6679: BUG: 优化: 在…中为方法 ‘SLSQP’ 返回正确的雅可比矩阵

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

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

  • #6687: DOC: 在开发者指南中添加“决定新功能”部分。

  • #6691: ENH: 当 fmin_slsqp 目标函数未返回标量时,提供更清晰的错误信息

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

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

  • #6709: TST: 修复32位系统上的多个测试失败

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

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

  • #6715: DOC: 更新发布说明,包含BSpline等。

  • #6716: MAINT: scipy.io.wavfile: 尝试读取时不会进入无限循环…

  • #6717: 一些样式清理

  • #6723: BUG: special: 在…中进行原地乘法之前转换为浮点数

  • #6726: 解决 interp1d 中的性能退化问题

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

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

  • #6732: MAINT: cython_special: 移除 errprint

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

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

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

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

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

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

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

  • #6746: DOC: special: 澄清 sph_harm/lpmv 中 Condon-Shortley 相位的使用

  • #6750: ENH: sparse: 避免在广播元素乘法时进行密集化

  • #6751: sinm 文档解释了 cosm

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

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

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

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

  • #6763: ENH: 加权 tau

  • #6768: ENH: 对球面Voronoi区域多边形顶点排序进行了Cython化

  • #6770: 修正 Delaunay 类的文档

  • #6775: ENH: 集成 LAPACK “专家” 例程与条件警告…

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

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

  • #6778: MAINT: cluster.hierarchy: 改进了错误信息的措辞

  • #6786: BLD: 将最小 Cython 版本增加到 0.23.4

  • #6787: DOC: 在 0.19.0 版本中扩展 linalg.block_diag 的变化…

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

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

  • #6791: DOC: 为 scipy.ndimage.fourier 添加示例

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

  • #6793: MAINT: 在将函数移出misc后修复循环导入

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

  • #6799: ENH: stats: Argus 分布

  • #6801: ENH: stats: 直方图分布

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

  • #6804: MAINT: 在 loggamma 中更多的修复

  • #6806: ENH: 为 ‘centroid’ 和 ‘median’ 方法提供更快的链接

  • #6810: ENH: 加速 upfirdn 和 resample_poly 处理多维数组的速度

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

  • #6814: ENH: 在…中为不同维度提供不同的外推模式

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

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

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

  • #6834: DOC: 为 skewtest 函数添加了参考。参见 #6829

  • #6836: DOC: 在函数文档字符串中添加了 mode=’mirror’,该函数接受…

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

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

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

  • #6850: BUG: 添加了对可选参数 scipy.stats.spearmanr 的检查

  • #6858: MAINT: 移除冗余测试

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

  • #6862: DOC: dx 应为浮点数,而非整数

  • #6863: 更新了 curve_fit 的文档

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

  • #6867: DOC: 将 cdist 的长示例列表移至注释部分

  • #6868: BUG: 使 stats.mode 在空…时返回一个 ModeResult 命名元组

  • #6871: 修正了文档。

  • #6874: ENH: gaussian_kde.logpdf 基于 logsumexp

  • #6877: BUG: ndimage: 防止所有零的足迹

  • #6881: python 3.6

  • #6885: 向量化 integrate.fixed_quad

  • #6886: 修正了拼写错误

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

  • #6892: DOC: 修复一堆 Sphinx 错误。

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

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

  • #6909: ENH: fftpack: 对 float16 输入使用 float32 例程。

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

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

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

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

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

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

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

  • #6936: BUG: 稀疏: 正确处理大小为1的2D索引

  • #6938: TST: 修复在32位Python上的特殊测试失败。

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

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

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

  • #6943: MAINT: 文档字符串修复和为 linalg.solve 添加了一个额外的测试

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

  • #6946: ENH: hypergeom.logpmf 以 betaln 表示

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

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

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

  • #6952: ENH: 在 LowLevelCallable 中进行小幅用户友好性清理

  • #6956: DOC: 改进了’output’关键字的描述

  • #6957: ENH 在 sparse.bmat 中提供更多信息的错误

  • #6962: Shebang 修复

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

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

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

  • #6973: 在 scipy.ndimage.interpolation.zoom() 中静默预期的 numpy 警告

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

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

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

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

  • #6985: ENH: sparse: 添加 scipy.sparse.linalg.spsolve_triangular

  • #6994: MAINT: 空间: 更新绘图工具

  • #6995: DOC: 稀疏线性代数中k的文档不完整,参见 #6990

  • #6997: TST: 用一个不那么奇异的例子改变了测试

  • #7000: DOC: 澄清 interp1d ‘zero’ 参数

  • #7007: BUG: 修复 linregress() 中两个数据点时的除零错误

  • #7009: BUG: 修复在传递 drop_rule 到 scipy.sparse.linalg.spilu 时的问题

  • #7012: 在 _distn_infrastructure.py 中的速度改进

  • #7014: 修正错字:添加一个单引号以修正一个小错字

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

  • #7026: MAINT: 更新 .mailmap

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

  • #7035: DOC: 更新 0.19.0 发布说明

  • #7036: ENH: 为 signal.stft 添加更多边界选项

  • #7040: TST: stats: 跳过太慢的测试

  • #7042: MAINT: sparse: 加速 setdiag 测试

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

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

  • #7060: DOC: 更新了包含 #7043 和 #6656 的发布说明

  • #7062: MAINT: 将默认的STFT边界关键字参数更改为“zeros”

  • #7064: 修复 ValueError: 路径在挂载 ‘X:’ 上,开始于挂载 ‘D:’ 上…

  • #7067: TST: 修复 Windows 上的 PermissionError: [Errno 13] 权限被拒绝

  • #7068: TST: 修复 UnboundLocalError: 局部变量 ‘data’ 被引用…

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

  • #7071: TST: 为 stats.spearmanr 的 nan 测试静默 RuntimeWarning

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

  • #7084: TST: linalg: 在 test_falker 中提高容差

  • #7095: TST: linalg: 在 test_falker 中增加更多容差

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

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

  • #7116: 回溯到 0.19.0rc2