SciPy 0.18.0 发布说明#

SciPy 0.18.0 是6个月辛勤工作的结晶。它包含了许多新功能、大量的错误修复、改进的测试覆盖率和更好的文档。在此版本中,有一些弃用和API变化,下面将详细说明。鼓励所有用户升级到此版本,因为有许多错误修复和优化。此外,我们的开发重点将转向0.19.x分支的错误修复版本,并在主分支上添加新功能。

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

此版本的重点包括:

新功能#

scipy.integrate 改进#

scipy.integrate.solve_bvp 中实现了一个用于ODE系统的两点边值问题求解器。该求解器允许非分离边界条件、未知参数和某些奇异项。它使用四阶配点算法找到一个C1连续的解。

scipy.interpolate 改进#

三次样条插值现在可以通过 scipy.interpolate.CubicSpline 实现。该类表示通过给定点的分段三次多项式,并且是C2连续的。它在每个区段的标准多项式基中表示。

n 维张量积分段多项式的表示可通过 scipy.interpolate.NdPPoly 类获得。

单变量分段多项式类 PPolyBpoly 现在可以在周期域上进行评估。为此,请使用 extrapolate=”periodic” 关键字参数。

scipy.fftpack 改进#

scipy.fftpack.next_fast_len 函数计算 FFTPACK 的下一个“规则”数字。将输入填充到这个长度可以显著提高 scipy.fftpack.fft 的性能。

scipy.signal 改进#

使用多相滤波的重采样已在函数 scipy.signal.resample_poly 中实现。该方法对信号进行上采样,应用零相位低通FIR滤波器,并使用 scipy.signal.upfirdn`(这也是0.18.0中的新功能)进行下采样。对于某些信号,该方法可能比 `scipy.signal.resample 提供的基于FFT的滤波更快。

scipy.signal.firls ,它使用最小二乘误差最小化构建FIR滤波器,已被添加。

scipy.signal.sosfiltfilt 被添加,它像 scipy.signal.filtfilt 一样进行前后滤波,但适用于二阶分段。

离散时间线性系统#

scipy.signal.dlti 提供了离散时间线性系统的实现。因此,StateSpaceTransferFunctionZerosPolesGain 类学习了一个新的关键字 dt,该关键字可用于创建相应系统表示的离散时间实例。

scipy.sparse 改进#

scipy.sparse 中的函数 sum, max, mean, min, transpose, 和 reshape 的签名已经通过增加额外的参数和功能进行了扩展,以提高与 numpy 中类似定义的函数的兼容性。

稀疏矩阵现在有一个 count_nonzero 方法,用于计算矩阵中非零元素的数量。与返回存储条目数量(数据属性的长度)的 getnnz()nnz 属性不同,此方法计算数据中实际非零条目的数量。

scipy.optimize 改进#

Nelder-Mead 最小化的实现,scipy.minimize(…, method=”Nelder-Mead”),获得了一个新的关键字 initial_simplex,它可以用于指定优化过程的初始单纯形。

在CG和BFGS最小化器中初始步长选择的改进已经完成。我们预计这一变化将在某些情况下提高优化的数值稳定性。详情请参见拉取请求gh-5536。

在 SLSQP 优化中处理无限边界的问题已得到改进。我们预计这一变化将在某些情况下提高优化的数值稳定性。详情请参见拉取请求 gh-6024。

scipy/benchmarks/go_benchmark_functions 中添加了一套大型的全局优化基准测试。详情请参见拉取请求 gh-4191。

Nelder-Mead 和 Powell 最小化现在只有在调用者没有设置最大迭代次数或函数评估次数的情况下才会设置默认值。在某些情况下,如果函数收敛缓慢且只设置了一个限制,最小化可能会比以前的版本持续更长时间,因此更有可能达到收敛。参见问题 gh-5966。

scipy.stats 改进#

梯形分布已实现为 scipy.stats.trapz。偏态正态分布已实现为 scipy.stats.skewnorm。Burr XII型分布已实现为 scipy.stats.burr12。三参数和四参数kappa分布分别已实现为 scipy.stats.kappa3scipy.stats.kappa4

新的 scipy.stats.iqr 函数计算分布的四分位距。

随机矩阵#

scipy.stats.special_ortho_groupscipy.stats.ortho_group 分别提供 SO(N) 和 O(N) 群中随机矩阵的生成器。它们生成符合 Haar 分布的矩阵,这是这些群流形上唯一的均匀分布。

scipy.stats.random_correlation 提供了一个生成随机相关矩阵的生成器,给定指定的特征值。

scipy.linalg 改进#

scipy.linalg.svd 新增了一个关键字参数 lapack_driver。可用的驱动程序有 gesdd``(默认)和 ``gesvd

scipy.linalg.lapack.ilaver 返回 SciPy 链接到的 LAPACK 库的版本。

scipy.spatial 改进#

布尔距离,scipy.spatial.pdist,已经得到了加速。改进程度因函数和输入大小而异。在许多情况下,可以预期速度提升为 x2–x10。

新类 scipy.spatial.SphericalVoronoi 在球体表面上构建 Voronoi 图。详情请参见拉取请求 gh-5232。

scipy.cluster 改进#

一个新的聚类算法,最近邻链算法,已经为 scipy.cluster.hierarchy.linkage 实现。因此,对于几种链接方法,可以预期算法性能有显著提升(\(O(N^2)\) 而不是 \(O(N^3)\))。

scipy.special 改进#

新函数 scipy.special.loggamma 计算 Gamma 函数对数的主分支。对于实数输入,loggammascipy.special.gammaln 兼容。对于复数输入,它在复平面上表现出更一致的行为,因此应优先于 gammaln 使用。

球贝塞尔函数的矢量化形式已实现为 scipy.special.spherical_jnscipy.special.spherical_knscipy.special.spherical_inscipy.special.spherical_yn。建议使用这些函数,而不是现已弃用的 sph_* 函数。

已经将几个特殊函数扩展到复数域和/或看到了域/稳定性改进。这包括 spencedigammalog1p 和几个其他函数。

已弃用的功能#

lti 系统的跨类属性已被弃用。以下属性/设置器将引发 DeprecationWarning

名称 - (访问/设置引发警告) - (设置引发警告) * 状态空间 - (num, den, gain) - (zeros, poles) * 传递函数 (A, B, C, D, gain) - (zeros, poles) * 零极点增益 (A, B, C, D, num, den) - ()

球贝塞尔函数 sph_in, sph_jn, sph_kn, sph_yn, sph_jnynsph_inkn 已被弃用,取而代之的是 scipy.special.spherical_jnspherical_kn, spherical_yn, spherical_in

scipy.constants 中的以下函数已被弃用:C2KK2CC2FF2CF2KK2F。它们已被新函数 scipy.constants.convert_temperature 取代,该函数可以执行所有这些转换,以及与兰金温标之间的转换。

向后不兼容的更改#

scipy.optimize#

optimize.bisectoptimize.brentqoptimize.brenthoptimize.ridder 的收敛标准现在与 numpy.allclose 的工作方式相同。

scipy.ndimage#

ndimage.iterpolation.affine_transform 中的偏移量现在始终在矩阵应用之后添加,无论矩阵是使用一维数组还是二维数组指定的。

scipy.stats#

stats.ks_2samp 如果输入不是实数或包含 nans,过去会返回无意义的值。现在对于此类输入会引发异常。

scipy.stats 分布的几个已弃用方法已被移除:est_loc_scalevecfuncveccdfvec_generic_moment

已弃用的函数 nanmeannanstdnanmedian 已从 scipy.stats 中移除。这些函数在 scipy 0.15.0 中已被弃用,取而代之的是它们的 numpy 等效函数。

scipy.stats 中分布的 rvs() 方法存在一个错误已被修复。当传递给 rvs() 的参数是为了广播而形状化时,在许多情况下返回的随机样本并不是随机的。这个问题的简单示例是 stats.norm.rvs(loc=np.zeros(10))。由于这个错误,该调用将返回10个相同的值。该错误仅影响依赖于形状、位置和尺度参数广播的代码。

rvs() 方法也接受了一些它不应该接受的参数。在 rvs() 接受实际上与广播不兼容的参数的情况下,存在潜在的向后不兼容性。例如是

stats.gamma.rvs([2, 5, 10, 15], size=(2,2))

第一个参数的形状与请求的大小不兼容,但函数仍然返回了一个形状为 (2, 2) 的数组。在 scipy 0.18 中,该调用会生成一个 ValueError

scipy.io#

scipy.io.netcdf 掩码现在如果同时给出 _FillValuemissing_value 属性,优先考虑 _FillValue 属性。此外,数据只有在完全匹配这些属性之一时才会被视为缺失:与 _FillValuemissing_value 相差四舍五入的值不再被视为缺失值。

scipy.interpolate#

scipy.interpolate.PiecewisePolynomial 类已被移除。它在 scipy 0.14.0 中已被弃用,scipy.interpolate.BPoly.from_derivatives 作为其替代品。

其他更改#

Scipy 现在使用 setuptools 进行构建,而不是简单的 distutils。这修复了依赖 Scipy 的项目在 setup.py 文件中使用 install_requires='scipy' 的问题(详见 Numpy 问题 gh-6551)。尽管如此,它可能会影响 Scipy 自身构建/安装方法的行为。请在 Scipy 问题跟踪器上报告任何意外行为。

PR #6240 改变了 scipy.optimize 模块中基于 L-BFGS-B 的例程对 maxfun 选项的解释。L-BFGS-B 搜索由多个迭代组成,每个迭代包含一个或多个函数评估。旧的搜索策略在达到 maxfun 函数评估后立即终止,而新的策略允许当前迭代在达到 maxfun 后完成。

scipy.spatial 子包中捆绑的 Qhull 副本已升级到 2015.2 版本。

scipy.sparse.linalg 子包中捆绑的 ARPACK 副本已升级到 arpack-ng 3.3.0。

scipy.sparse 子包中捆绑的 SuperLU 副本已升级到 5.1.1 版本。

作者#

  • @endolith

  • @yanxun827 +

  • @kleskjr +

  • @MYheavyGo +

  • @solarjoe +

  • 格雷戈里·艾伦 +

  • 吉勒·奥耶扎拉特 +

  • 汤姆·奥格斯珀格 +

  • 亨里克·本特森 +

  • 菲利克斯·伯肯坎普

  • Per Brodtkorb

  • Lars Buitinck

  • 丹尼尔·邦廷 +

  • Evgeni Burovski

  • CJ 凯里

  • 蒂姆·塞拉

  • 格雷·克里斯托弗罗 +

  • 罗伯特·西姆尔曼

  • 菲利普·德布尔 +

  • 伊夫·德莱

  • Dávid Bodnár +

  • Ion Elberdin +

  • 加布里埃莱·法里纳 +

  • 余峰

  • 安德鲁·福尔

  • 约瑟夫·福克斯-拉比诺维茨

  • 西蒙·吉本斯 +

  • 尼尔·吉尔德哈 +

  • 科利亚·格洛戈夫斯基 +

  • 克里斯托夫·戈尔克

  • Ralf Gommers

  • 托德·古德尔 +

  • 约翰尼·格雷 +

  • 亚历克斯·格里芬

  • 奥利维尔·格里塞尔

  • 托马斯·哈斯旺特 +

  • 迈克尔·赫希 +

  • Derek Homeier

  • Golnaz Irannejad +

  • Marek Jacob +

  • InSuk Joung +

  • Tetsuo Koyama +

  • 尤金·克罗哈列夫 +

  • 埃里克·拉尔森

  • 丹尼斯·拉萨尔德

  • 安东尼·李

  • Jerry Li +

  • 亨利·林 +

  • 刘尼尔 +

  • 洛伊克·埃斯特夫

  • Lei Ma +

  • 奥斯瓦尔多·马丁 +

  • Stefano Martina +

  • 尼古拉·马约罗夫

  • 马修·梅洛特 +

  • Sturla Molden

  • 埃里克·摩尔

  • Alistair Muldal +

  • 马尼提亚·南达纳

  • 塔维·纳桑森 +

  • 安德鲁·纳尔逊

  • 乔尔·诺特曼

  • Behzad Nouri

  • 尼古拉·诺瓦茨基 +

  • 胡安·努涅斯-伊格莱西亚斯 +

  • Ted Pudlik

  • 埃里克·昆特罗

  • Yoav Ram

  • 乔纳斯·劳伯 +

  • 泰勒·雷迪 +

  • Juha Remes

  • 加勒特·雷诺兹 +

  • Ariel Rokem +

  • 法比安·罗斯 +

  • 比尔·萨克斯 +

  • Jona Sassenhagen +

  • Kari Schoonbee +

  • 马尔切洛·塞里 +

  • Sourav Singh +

  • 马丁·斯佩克 +

  • Søren Fuglede Jørgensen +

  • Bhavika Tekwani +

  • Martin Thoma +

  • 山姆·泰吉尔 +

  • 遇见 Udeshi +

  • Utkarsh Upadhyay

  • Bram Vandekerckhove +

  • 塞巴斯蒂安·瓦雷拉 +

  • 泽·维尼修斯 +

  • 保罗·维尔塔宁

  • 斯蒂芬·范·德·瓦特

  • 沃伦·韦克瑟

  • Jakub Wilk +

  • 乔什·威尔逊

  • 菲利普·J·沃尔弗拉姆 +

  • 内森·伍兹

  • 吴浩晨

  • G Young +

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

0.18.0 版本关闭的问题#

  • #1484: 使用 *GESVD lapack 驱动程序的 SVD(Trac #957)

  • #1547: ndimage.interpolation.affine_transform() 中偏移量的不一致使用…

  • #1609: special.hyp0f1 返回 nan (Trac #1082)

  • #1656: fmin_slsqp 增强 (Trac #1129)

  • #2069: rvs 中的 stats 广播(Trac #1544)

  • #2165: sph_jn 对于某些阶数/值返回错误结果 (Trac #1640)

  • #2255: 在 affine_transform 中平移和旋转的顺序不正确…

  • #2332: hyp0f1 的参数和返回值不符合 numpy 风格 (Trac #1813)

  • #2534: 带有 uint8 dtype 的稀疏 .sum() 方法的行为与…不一致

  • #3113: 为 CSPHJY, SPHJ, SPHY, CSPHIK, SPHI, SPHIK… 实现 ufuncs…

  • #3568: SciPy 0.13.3 - CentOS5 - 测试_arpack 中的错误

  • #3581: 优化:fmin_bfgs中的步长是“不好的”

  • #4476: scipy.sparse 非本地字节序错误

  • #4484: optimize.fmin 中的 ftol 失效

  • #4510: sparsetools.cxx 中的 call_thunk 可能会由于越界而导致段错误…

  • #5051: _minimize_neldermead 的 ftol 和 xtol 是绝对值而不是…

  • #5097: 提议:球面Voronoi图

  • #5123: 当传递Cython类型时,调用 scipy.sparse.coo_matrix 失败…

  • #5220: scipy.cluster.hierarchy.{ward,median,centroid} 无法工作…

  • #5379: 在 .travis.yml 的末尾添加一个构建步骤,用于上传工作…

  • #5440: scipy.optimize.basinhopping: accept_test 返回 numpy.bool_

  • #5452: 在使用变量积分时,scipy.integrate.nquad 出现错误…

  • #5520: 无法正确继承 csr_matrix

  • #5533: Kendall tau 实现使用了 Python 的归并排序

  • #5553: stats.tiecorrect 溢出

  • #5589: 将第十二类Burr分布添加到stats中。

  • #5612: 由于默认设置,对于小k值,sparse.linalg 分解速度较慢…

  • #5626: io.netcdf 掩码应使用 masked_equal 而不是 masked_value

  • #5637: 简单的三次样条插值?

  • #5683: BUG: Akima1DInterpolator 在给定多维数据时可能返回 NaN…

  • #5686: scipy.stats.ttest_ind_from_stats 不接受数组

  • #5702: scipy.ndimage.interpolation.affine_transform 缺乏文档…

  • #5718: cdist 中加权闵可夫斯基距离计算错误

  • #5745: 在下一个版本中迁移到 setuptools

  • #5752: DOC: solve_discrete_lyapunov 方程在错误的位置放置了转置…

  • #5760: signal.ss2tf 无法处理零阶状态空间模型

  • #5764: 超几何函数 hyp0f1 对复数的行为不正确…

  • #5814: stats NaN 策略错误信息与代码不一致

  • #5833: stats.binom_test() 的文档字符串需要更新

  • #5853: 对于形状为 (1,1) 的复数矩阵,scipy.linalg.expm 出现错误

  • #5856: 指定 Nelder-Mead 初始单纯形

  • #5865: scipy.linalg.expm 对某些 numpy 矩阵失败

  • #5915: optimize.basinhopping - 变量在赋值前被引用。

  • #5916: LSQUnivariateSpline 拟合失败,结点由…生成

  • #5927: scipy.stats.binned_statistic_dd 中的 unicode 与字符串比较

  • #5936: ks_2samp 的更快实现

  • #5948: csc 矩阵 .mean 返回单元素矩阵而不是标量

  • #5959: BUG: 使用 lgmres 时优化测试的根错误

  • #5972: 32位Python上稀疏求和测试的测试失败

  • #5976: 在使用0 x 0矩阵时,scipy.sparse.bmat中出现意外异常

  • #6008: scipy.special.kl_div 在 0.14.1 版本中不可用

  • #6011: von-Mises 熵存在问题

  • #6016: 对于某些大型…,python 在 linalg.interpolative.svd 时崩溃

  • #6017: Wilcoxon 符号秩检验,使用 zero_method=”pratt” 或 “zsplit”…

  • #6028: stats.distributions 没有梯形分布

  • #6035: f_oneway 中的链接错误

  • #6056: BUG: signal.decimate 应该只接受离散的 LTI 对象

  • #6093: 在Linux 32位系统上使用openblas时的精度错误

  • #6101: 重心变换测试在Python3、32位Linux上出错

  • #6105: scipy.misc.face 的文档字符串不正确

  • #6113: scipy.linalg.logm 对一个简单的矩阵失败

  • #6128: 当与numpy一起使用时,稀疏COO数组的dot方法中的错误…

  • #6132: 最新MKL的失败

  • #6136: 在 master 上使用 MKL 时失败

  • #6162: fmin_l_bfgs_b 返回不一致的结果(fmin ≠ f(xmin))并且…

  • #6165: 使用 Newton-CG 进行 optimize.minimize 时出现无限循环

  • #6167: 包含边界值的数据拟合分布不正确。

  • #6194: lstsq() 和其他函数将 numpy.complex256 识别为实数

  • #6216: ENH: 提高布拉德福德的 ppf cdf 往返精度

  • #6217: BUG: weibull_min.logpdf 在 c=1 且 x=0 时返回 nan

  • #6218: 是否有方法限制最短路径搜索的距离?

  • #6222: PchipInterpolator 不再处理包含两个元素的数组

  • #6226: ENH: 提高 logistic.ppf 和 logistic.isf 的准确性

  • #6227: ENH: 提高 rayleigh.logpdf 和 rayleigh.logsf 的准确性…

  • #6228: ENH: 提高 gumbel_l 的 ppf cdf 往返精度

  • #6235: BUG: alpha.pdf 和 alpha.logpdf 在 x=0 时返回 nan

  • #6245: ENH: 提高 invgamma 的 ppf-cdf 和 sf-isf 往返精度

  • #6263: BUG: stats: 在 multivariate_normal 文档字符串中的不一致性

  • #6292: Python 3 在 test_sparsetools.TestInt32Overflow 中的不可排序类型错误

  • #6316: TestCloughTocher2DInterpolator.test_dense 导致 python3.5.2rc1_64bit 崩溃…

  • #6318: Scipy 的 interp1d ‘nearest’ 方法在 x 轴的高值上不工作

0.18.0 的拉取请求#

  • #3226: DOC: 将 nbna 改为常规的 m 和 n

  • #3867: 允许 cKDTree.query 在 k 中接受列表输入。

  • #4191: ENH: 全局优化器的基准测试

  • #4356: ENH: 添加 PPoly.solve(y) 用于求解 p(x) == y

  • #4370: DOC 为清晰起见,分离布尔距离函数

  • #4678: BUG: 稀疏: 确保索引数据类型足够大以传递所有参数…

  • #4881: scipy.signal: 添加了用于线性离散时间系统的类 dlti…

  • #4901: MAINT: 添加基准测试并改进 signal.lfilter 的文档字符串

  • #5043: ENH: sparse: 添加 count_nonzero 方法

  • #5136: 将 kurtosistest() 归功于 Anscombe & Glynn (1983)

  • #5186: ENH: 移植 upfirdn

  • #5232: ENH: 在 scipy.spatial 中添加球面 Voronoi 图算法

  • #5279: ENH: 具有不同归一化的贝塞尔滤波器,高阶

  • #5384: BUG: 关闭 #5027 距离函数总是将布尔值转换为双精度

  • #5392: ENH: 为 signal.decimate 添加 zero_phase 关键字参数

  • #5394: MAINT: sparse: 非规范测试清理和修复

  • #5424: DOC: 添加 Scipy 开发者指南

  • #5442: STY: PEP8 修订

  • #5472: LGMRES 中的在线 QR

  • #5526: BUG: stats: 修复分布的 rvs() 方法中的广播问题。

  • #5530: MAINT: sparse: 显式设置 format 属性

  • #5536: 优化: 修复 cg/bfgs 初始步长

  • #5548: PERF: 改进了 stats.kendalltau 的性能

  • #5549: ENH: 层次聚类的最近邻链算法

  • #5554: MAINT/BUG: 修复了 stats.tiecorrect 中的溢出错误

  • #5557: BUG: 修改 optimize.bisect 以达到所需的容差

  • #5581: DOC: 最小二乘法的教程

  • #5606: ENH: differential_evolution - 移动 solve 方法的核心循环…

  • #5609: [MRG] 针对 numpy 开发版进行测试

  • #5611: 使用 setuptools 进行 bdist_egg 分发

  • #5615: MAINT: linalg: 收紧 _decomp_update + special: 移除未使用的…

  • #5622: 添加 SO(N) 旋转矩阵生成器

  • #5623: ENH: special: 添加矢量化球贝塞尔函数。

  • #5627: 对问题 #5160 的回应,实现了偏态正态分布…

  • #5628: DOC: 对齐描述和操作

  • #5632: DOC: special: 扩展了Airy、椭圆、贝塞尔函数的文档。

  • #5633: MAINT: linalg: _decomp_update 中的未检查 malloc

  • #5634: MAINT: 优化: 收紧 _group_columns

  • #5640: 修复了 io.netcdf 的掩码问题

  • #5645: MAINT: cKDTree 范围查询中处理大小为 0 的向量

  • #5649: MAINT: 更新许可证文本

  • #5650: DOC: 澄清 ltisys.py 中的指数顺序

  • #5651: DOC: 澄清 scipy.special.gammaln 的文档

  • #5652: DOC: 修复了 scipy.special.betaln 文档

  • #5653: [MRG] ENH: CubicSpline 插值器

  • #5654: ENH: 将Burr12分布添加到stats模块

  • #5659: DOC: 在 runtests.py -h 中定义 BEFORE/AFTER 用于 bench-compare

  • #5660: MAINT: 移除在0.16.0之前已弃用的函数

  • #5662: ENH: 循环统计优化

  • #5663: MAINT: 移除对 np.testing.rand 的使用

  • #5665: MAINT: 空间: 移除匹配距离实现

  • #5667: 将一些HTTP链接更改为HTTPS

  • #5669: DOC: zpk2sos 不能处理模拟、类似数组等。

  • #5670: 更新 conf.py

  • #5672: MAINT: 将一个样本分布移动到 rv_discrete 的子类

  • #5678: MAINT: stats: 移除 est_loc_scale 方法

  • #5679: MAINT: 对离散分布的通用计算进行DRY处理

  • #5680: MAINT: 在 stats.distributions 中停止遮蔽内置函数

  • #5681: 前向移植 ENH: 重新启用 fill_value 的广播功能

  • #5684: BUG: 修复 Akima1DInterpolator 返回 nans 的问题

  • #5690: BUG: 修复 stats.ttest_ind_from_stats 以处理数组。

  • #5691: BUG: 修复 io._loadarff 中的生成器以符合 PEP 0479

  • #5693: ENH: 使用 math.factorial 进行精确阶乘

  • #5695: DOC: dx 可能是一个浮点数,不仅仅是整数

  • #5699: MAINT: io: 微优化 Matlab 读取代码以减小尺寸

  • #5701: 实现 OptimizeResult.__dir__

  • #5703: ENH: stats: 使 R² 打印在 probplot 中可选

  • #5704: MAINT: 拼写错误 ouf->out

  • #5705: BUG: 修复 query_pairs 中的拼写错误

  • #5707: DOC:为 scipy.optimize.fmin 中的 ftol xtol 添加一些解释

  • #5708: DOC: 优化: PEP8 最小化文档字符串

  • #5709: MAINT: 优化 Cython 代码以提高速度和减小体积

  • #5713: [DOC] 修复指向参考文献的断链

  • #5717: DOC: curve_fit 在失败时引发 RuntimeError。

  • #5724: 前向移植 gh-5720

  • #5728: STY: 删除一个空行

  • #5729: ENH: spatial: 加速布尔距离

  • #5732: MAINT: 对differential_evolution的默认关键词更改破坏了…

  • #5733: TST: differential_evolution - 种群初始化测试

  • #5736: log1p、expm1 和 xlog1py 中的复数支持

  • #5741: MAINT: 稀疏: 清理提取函数

  • #5742: DOC: signal: 解释 get_window 中的 fftbins

  • #5748: ENH: 添加 O(N) 随机矩阵生成器

  • #5749: ENH: 添加多相重采样

  • #5756: RFC: 提升最小numpy版本,放弃旧的python版本

  • #5761: DOC: 对最小二乘法文档字符串的一些改进

  • #5762: MAINT: 空间: 距离重构

  • #5768: DOC: 修复 io.loadmat 文档字符串中 mdict 参数的问题

  • #5770: BUG: 接受任何 np.dtype 可以处理的 dtype 用于 sparse.random

  • #5772: 更新 sparse.csgraph.laplacian 文档字符串

  • #5777: BUG: 修复 special.hyp0f1 使其对复数输入正确工作。

  • #5780: DOC: 更新 PIL 错误安装 URL

  • #5781: DOC: 修复关于 solve_discrete_lyapunov 的文档

  • #5782: DOC: cKDTree 和 KDTree 现在相互引用

  • #5783: DOC: 澄清 scipy.optimize.brute 中的完成行为

  • #5784: MAINT: 将 least_squares 的默认容差更改为 1e-8

  • #5787: BUG: 允许在 signal.ss2tf 中处理零阶状态空间模型

  • #5788: DOC, BUG: 澄清并强制执行 ‘Data’ 对象的输入类型

  • #5789: ENH: sparse: 加速 LIL 矩阵切片 (原为 #3338)

  • #5791: DOC: README: 移除 coveralls.io

  • #5792: MAINT: 移除对已弃用的 np.random.random_integers 的使用

  • #5794: 修复 affine_transform(修复 #1547 和 #5702)

  • #5795: DOC: 从 kmeans2 文档中移除了 uniform 方法

  • #5797: DOC: 澄清加权闵可夫斯基的计算

  • #5798: BUG: 确保 scipy 的 _asfarray 返回 ndarray

  • #5799: TST: Mpmath 测试补丁

  • #5801: 允许读取某些 IDL 8.0 .sav 文件

  • #5803: DOC: 修复错误信息中的模块名称

  • #5804: DOC: special: 扩展了特殊函数的文档。

  • #5805: DOC: 修正 _spectral_helper 中的返回顺序

  • #5806: ENH: sparse: 向量化 coo_matrix.diagonal

  • #5808: ENH: 在 scipy/stats/stats.py 中添加了计算 IQR 指标的 iqr 函数

  • #5810: MAINT/BENCH: sparse: 基准清理和添加

  • #5811: DOC: sparse.linalg: 形状,非大小

  • #5813: 更新稀疏 ARPACK 函数的最小 ncv

  • #5815: BUG: 错误消息包含错误的值

  • #5816: 从统计测试中移除死代码

  • #5820: 在 order_filter 文档字符串中,“in”->“a”

  • #5821: DOC: README: INSTALL.txt 在2014年被重命名

  • #5825: DOC: least_squares 文档字符串中的拼写错误

  • #5826: MAINT: 稀疏: 增加测试覆盖率

  • #5827: NdPPoly 重构

  • #5828: 提高 hyp0f1 在大阶数情况下的数值稳定性

  • #5829: ENH: sparse: 在 sparse 中的所有 .toXXX() 方法中添加 copy 参数…

  • #5830: DOC: 重新编写 INSTALL.rst.txt

  • #5831: 为 voronoi_plot_2d 添加绘图选项

  • #5834: 更新 stats.binom_test() 文档字符串

  • #5836: ENH, TST: 允许 SIMO tf 用于 tf2ss

  • #5837: DOC: 图像示例

  • #5838: ENH: sparse: 为 coo_matrix 添加 eliminate_zeros() 方法

  • #5839: BUG: 修复了 NumpyVersion.__repr__ 的名称

  • #5845: MAINT: 修正了文档中的拼写错误

  • #5847: 修复sparsetools中的错误

  • #5848: BUG: sparse.linalg: 添加锁以确保 ARPACK 线程安全

  • #5849: ENH: sparse.linalg: 升级到 superlu 5.1.1

  • #5851: ENH: 将 lapack 的 ilaver 暴露给 python 以允许 lapack 版本…

  • #5852: MAINT: runtests.py: 确保 Ctrl-C 中断构建

  • #5854: DOC: 文档的小更新

  • #5855: Pr 5640

  • #5859: ENH: 添加随机相关矩阵生成器

  • #5862: BUG: 允许形状为 (1, 1) 的复数矩阵使用 expm

  • #5863: 修复: 修复测试

  • #5864: DOC: 添加关于正态生存函数(Q函数)的一点注释

  • #5867: 修复 #5865

  • #5869: 扩展正态分布的cdf到复数域

  • #5872: DOC: 注意 morlet 和 cwt 不能一起使用

  • #5875: DOC: interp2d 类描述

  • #5876: MAINT: spatial: 移除一个多余的打印语句

  • #5878: MAINT: 修复了 ndimage 测试中的嘈杂 UserWarnings。修复了 #5877

  • #5879: MAINT: sparse.linalg/superlu: 添加显式转换以解决编译器…

  • #5880: MAINT: signal: 当在…时,从 math 而不是 fractions 导入 gcd

  • #5887: Neldermead 初始单纯形

  • #5894: BUG: _CustomLinearOperator 在 python3.5 中无法解封

  • #5895: DOC: special: 稍微改进了 multigammaln 的 docstring

  • #5900: 移除重复赋值。

  • #5901: 更新捆绑的 ARPACK

  • #5904: ENH: 使卷积和相关函数与顺序无关

  • #5905: ENH: sparse.linalg: 进一步清理 LGMRES

  • #5906: 在 scipy.integrate 中的增强和清理(尝试 #2)

  • #5907: ENH: 更改稀疏 summean 的 dtype 转换以匹配…

  • #5909: 卷积对称性的更改

  • #5913: MAINT: basinhopping 移除实例测试 关闭 #5440

  • #5919: MAINT: 如果 basinhopping niter=0,则未初始化的变量。关闭 #5915

  • #5920: BLD: 修复 MKL 缺少 lsame.c 错误

  • #5921: DOC: 插值: 添加示例展示如何解决…问题

  • #5926: MAINT: spatial: 升级到 Qhull 2015.2

  • #5928: MAINT: 稀疏: 优化 DIA 求和/对角线, csgraph.laplacian

  • #5929: 更新octave-maintainers讨论的信息/URL

  • #5930: TST: special: 从 sph_yn 中静默 DeprecationWarnings

  • #5931: ENH: 实现Gamma对数的主分支。

  • #5934: 拼写错误: “mush” => “must”

  • #5935: BUG:字符串比较 stats._binned_statistic 关闭 #5927

  • #5938: 使用Cython优化stats.ks_2samp,速度提升约33%。

  • #5939: DOC: 修复 optimize.fmin 收敛文档字符串

  • #5941: 修正squareform文档字符串中的小拼写错误

  • #5942: 更新 linregress 标准误差描述。

  • #5943: ENH: 提高对数正态分布的数值精度

  • #5944: 将 vonmises 合并到 stats pyx

  • #5945: MAINT: 插值: 调整声明以避免cython警告…

  • #5946: MAINT: 稀疏: 清理格式转换方法

  • #5949: BUG: 修复稀疏矩阵的 .mean 方法,使其返回标量而非矩阵

  • #5955: MAINT: 将 hanning 的调用替换为 hann

  • #5956: DOC: 缺少句号干扰解析

  • #5958: MAINT: 为 lognorm.sf 下溢添加测试

  • #5961: MAINT _centered(): 将 size 重命名为 shape

  • #5962: ENH: constants: 添加多尺度温度转换函数

  • #5965: ENH: special: 计算 comb() 时 exact=True 的更快方法

  • #5975: ENH: 改进了 signal.decimate 的 FIR 路径

  • #5977: MAINT/BUG: sparse: 移除过度严格的 bmat 检查

  • #5978: minimize_neldermead() 在用户请求的 maxiter 或 maxfev 处停止

  • #5983: ENH: 使稀疏 sum 像 NumPy sum 一样对 32 位… 进行数据类型转换

  • #5985: BUG, API: 为 curve_fit 添加 jac 参数

  • #5989: ENH: 添加 firls 最小二乘拟合

  • #5990: BUG: 读取尝试处理20位WAV文件,但不应该

  • #5991: DOC: 清理 wav 读/写文档并添加常用类型的表格

  • #5994: ENH: 为 svd 添加 gesvd 方法

  • #5996: MAINT: 波清理

  • #5997: TST: 拆分 upfirdn 测试并与 lfilter 进行比较

  • #6001: 滤波器设计文档

  • #6002: COMPAT: 扩展 fromnumeric.py 的兼容性

  • #6007: ENH: 跳过频率响应中的 TF 到 TF 转换

  • #6009: DOC: 修复 entr、rel_entr、kl_div 的版本添加信息错误

  • #6013: 修复了 von Mises 分布的熵计算。

  • #6014: MAINT: 使 gamma, rgamma 对复数参数使用 loggamma

  • #6020: WIP: ENH: 为向量添加 exact=True 的阶乘

  • #6022: 在图像插值函数列表中添加了 ‘lanczos’。

  • #6024: BUG: 优化: 在 SLSQP 中没有…时不要使用虚拟约束

  • #6025: ENH: 为ODE系统增加边界值问题求解器

  • #6029: MAINT: 为 optimize._lsq 导入未来功能

  • #6030: ENH: stats.trap - 添加梯形分布关闭 #6028

  • #6031: MAINT: 对 optimize._numdiff 的一些改进

  • #6032: MAINT: 将 special/_comb.c 添加到 .gitignore

  • #6033: BUG: 检查插值奇异值分解中请求的近似秩

  • #6034: DOC: 修正了 stats.py 中 mannwhitneyu 的文档

  • #6040: 修复: 修正 f_oneway 中的错误链接

  • #6044: BUG: (ordqz) 始终将参数 lwork 增加 1。

  • #6047: ENH: 扩展 special.spence 到复数参数。

  • #6049: DOC: 将 PR #5640 的文档添加到 0.18.0 发布说明中

  • #6050: MAINT: 与loggamma相关的小清理

  • #6070: 在 wilcoxon 中添加 asarray 以显式地将列表转换为 numpy 数组…

  • #6071: DOC: 抗混叠滤波器及链接抽取重采样等。

  • #6075: MAINT: 为复数参数重新实现 special.digamma

  • #6080: 避免在 kstest 中进行多次计算

  • #6081: 澄清了皮尔逊相关系数的返回值

  • #6085: ENH: 在 spsolve() 中允许使用 umfpack 的稀疏矩阵的长索引

  • #6086: 修复关联拉盖尔多项式的描述

  • #6087: 修正了 splrep 的文档字符串。

  • #6094: ENH: special: 将 zeta 签名更改为 zeta(x, q=1)

  • #6095: BUG: 修复 special.spence 中的整数溢出

  • #6106: 修复了问题 #6105

  • #6116: BUG: 矩阵对数边缘情况

  • #6119: TST: 在 python 3.5 上 stats 中的 DeprecationWarnings 关闭了 #5885

  • #6120: MAINT: sparse: 清理 sputils.isintlike

  • #6122: DOC: 优化: linprog 文档应改为最小化而非最大化

  • #6123: DOC: 优化: 在 scipy.optimize.OptimizeResult 中记录 fun 字段

  • #6124: 将FFT零填充计算从signaltools移动到fftpack

  • #6125: MAINT: 改进 a ~ x 机制中的 special.gammainc。

  • #6130: BUG: 稀疏: 修复COO与零列的点积

  • #6138: ENH: stats: 改进 genextreme.sf 和 genextreme.isf 的行为

  • #6146: MAINT: 简化 expit 实现

  • #6151: MAINT: special: 使 generate_ufuncs.py 的输出具有确定性

  • #6152: TST: special: 对大参数的 gammainc 进行更好的测试

  • #6153: ENH: 使 next_fast_len 公开且更快

  • #6154: 修正拼写错误 “mush”–>”must”

  • #6155: DOC: 修复一些不正确的 RST 定义列表

  • #6160: 使 logsumexp 在遇到掩码数组时报错

  • #6161: 在rosen文档中添加了缺失的括号

  • #6163: ENH: 添加了“kappa4”和“kappa3”分布。

  • #6164: DOC: 在 integrate._bvp 中的小清理

  • #6169: 修复 mpf_assert_allclose 以处理可迭代结果,例如映射

  • #6170: 修复 pchip_interpolate 便捷函数

  • #6172: 修正了文档字符串中错位的括号

  • #6175: ENH: sparse.csgraph: 将索引传递给 shortest_path

  • #6178: TST: 增加广义极端…的 sf 和 isf 的测试覆盖率

  • #6179: TST: 避免来自 numpy 的弃用警告

  • #6181: ENH: CubicSpline 的边界条件

  • #6182: DOC: 为 max_len_seq 添加示例/图表

  • #6183: BLD: 更新 Bento 构建配置文件以适应最近的更改。

  • #6184: BUG: 修复了 io/wavfile 中对 float96 输入的问题。

  • #6186: ENH: 为 PPoly 和 BPoly 添加周期性外推

  • #6192: MRG: 添加 circle-CI

  • #6193: ENH: 稀疏: 避免 setitem 稠密化

  • #6196: 修复了 cdist 中 Mahalanobis 距离的 docstring 中缺失的 sqrt,…

  • #6206: MAINT: 对solve_bvp的小改动

  • #6207: BUG: linalg: 对于BLAS,将complex256降级为complex128,而不是…

  • #6209: BUG: io.matlab: 避免在 read_element_into 中的缓冲区溢出

  • #6210: BLD: 在构建时使用 setuptools。

  • #6214: BUG: sparse.linalg: 修复 LGMRES 分解处理中的错误

  • #6215: MAINT: special: 使 loggamma 使用 zdiv

  • #6220: DOC: 添加参数

  • #6221: ENH: 改进用于 solve_bvp 的 Newton 求解器

  • #6223: pchip 应该适用于长度为2的数组

  • #6224: signal.lti: 弃用跨类属性/设置器

  • #6229: BUG: 优化: 避免 Newton-CG 中的无限循环

  • #6230: 为高斯滤波器的应用添加示例

  • #6236: MAINT: gumbel_l 精度

  • #6237: MAINT: 瑞利分布精度

  • #6238: MAINT: 逻辑回归准确性

  • #6239: MAINT: 布拉德福分布的准确性

  • #6240: MAINT: 避免由于 maxfun 中断导致的 l-bfgs-b 中的 fmin 错误

  • #6241: MAINT: weibull_min 精度

  • #6246: ENH: 在分布中添加 _support_mask

  • #6247: 修复了一个ode示例的打印错误

  • #6249: MAINT: 将 stats.probplot 的 x 轴标签更改为“理论…”

  • #6250: DOC: 修正拼写错误

  • #6251: MAINT: 常量: 从已弃用的转换中过滤掉测试噪音

  • #6252: MAINT: io/arff: 移除未使用的变量

  • #6253: 为 scipy.ndimage.filters 添加示例

  • #6254: MAINT: special: 修复一些构建警告

  • #6258: MAINT: 逆伽马分布的精度

  • #6260: MAINT: signal.decimate - 使用离散时间对象

  • #6262: BUG: odr: 修复字符串格式化

  • #6267: TST: 修复了 interpolate 和 stats 中的一些测试问题。

  • #6269: TST: 修复测试套件中的一些警告

  • #6274: ENH: 添加 sosfiltfilt

  • #6276: DOC: 更新 0.18.0 版本的发布说明

  • #6277: MAINT: 更新作者名称映射

  • #6282: DOC: 修正 scipy.stats.normaltest 的引用

  • #6283: DOC: 对 0.18.0 版本发布说明的更多补充。

  • #6284: 为 loggamma 添加 versionadded:: 指令。

  • #6285: BUG: stats: 在 multivariate_normal 文档字符串中的不一致…

  • #6290: 添加作者列表,gh-lists 到 0.18.0 发布说明

  • #6293: TST: special: 放宽测试的精度

  • #6295: BUG: 稀疏: 在 bsr_matrix 构造函数中停止比较 None 和 int

  • #6313: MAINT: 修复 python 3.5 travis-ci 构建问题。

  • #6327: TST: signal: 在…中使用 assert_allclose 进行近似相等的测试

  • #6330: BUG: spatial/qhull: 通过 malloc 分配 qhT 以确保 CRT 喜欢…

  • #6332: TST: 修复 stats.iqr 测试以不发出警告,并修复行长度。

  • #6334: MAINT: special: 修复 hyp0f1 的测试

  • #6347: TST: spatial.qhull: 在32位平台上跳过一项测试

  • #6350: BUG: 优化/slsqp: 不要覆盖数组越界

  • #6351: BUG: #6318 Interp1d ‘nearest’ 整数 x 轴溢出问题已修复

  • #6355: 0.18.0 的回溯