SciPy-1-12-中文文档-三十三-

SciPy 1.12 中文文档(三十三)

原文:docs.scipy.org/doc/scipy-1.12.0/index.html

SciPy 0.17.1 发布说明

原文链接:docs.scipy.org/doc/scipy-1.12.0/release/0.17.1-notes.html

SciPy 0.17.1 是一个仅修复 bug 的版本,与 0.17.0 没有新功能。

0.17.1 中已关闭的问题

  • #5817: BUG: skew, kurtosis 返回 np.nan 而非“propagate”

  • #5850: 使用 sgelsy 失败的测试

  • #5898: 使用 float128 时,interpolate.interp1d 崩溃

  • #5953: cKDTree.query 在 L_inf 距离下性能严重退化…

  • #6062: mannwhitneyu 在 0.17.0 中破坏了向后兼容性

  • #6134: T 检验不能处理 NaN 值

0.17.1 的拉取请求

  • #5902: BUG: interpolate: 修复 interp1d 处理 np.float128 的问题

  • #5957: BUG: 在 0.17 版本中,cKDTree.query 在 p=np.inf 时变慢

  • #5970: 实际通过 nan_policy="propagate" 在统计函数中传播 NaN 值

  • #5971: BUG: linalg: 修复 *gelsy 中 lwork 检查

  • #6074: BUG: special: 修复严格别名规则的违反

  • #6083: BUG: 修复线性操作符求和的 dtype

  • #6100: BUG: 修复 mannwhitneyu 以保持向后兼容性

  • #6135: 即使在工作空间查询期间,也不要向 LAPACK 传递空指针。

  • #6148: stats: 修复 T 检验和 kendalltau 中 NaN 值的处理

SciPy 0.17.0 发布说明

原文链接:docs.scipy.org/doc/scipy-1.12.0/release/0.17.0-notes.html

内容

  • SciPy 0.17.0 发布说明

    • 新特性

      • scipy.cluster 的改进

      • scipy.io 的改进

      • scipy.optimize 的改进

        • 线性分配问题求解器

        • 最小二乘优化

      • scipy.signal 的改进

      • scipy.stats 的改进

      • scipy.sparse 的改进

      • scipy.spatial 的改进

      • scipy.interpolate 的改进

      • scipy.linalg 的改进

    • 已弃用的特性

    • 不兼容的后向变更

    • 其他变更

    • 作者

      • 0.17.0 版本关闭的问题

      • 0.17.0 的拉取请求

SciPy 0.17.0 是 6 个月努力的结果。它包含许多新特性、大量 bug 修复、改进的测试覆盖率和更好的文档。本次发布中有一些被弃用的内容和 API 变更,这些变更在下文有详细记录。建议所有用户升级到此版本,因为它包含大量的 bug 修复和优化。此外,我们的开发关注点现在将转向 0.17.x 分支的 bug 修复发布,以及在主分支上增加新特性。

本次发布需要 Python 2.6、2.7 或 3.2-3.5,以及 NumPy 1.6.2 或更高版本。

发布亮点:

  • 新增带约束的线性和非线性最小二乘优化函数:scipy.optimize.lsq_linearscipy.optimize.least_squares
  • scipy.optimize.curve_fit中支持带边界的拟合。
  • scipy.stats中进行了显著改进,提供了对具有 NaN 或为空的输入更好的处理功能,改进了文档,同时确保了scipy.statsscipy.stats.mstats之间的一致行为。
  • scipy.spatial.cKDTree中进行了显著的性能改进和新功能添加。

新特性

scipy.cluster有所改进

新增了一个函数scipy.cluster.hierarchy.cut_tree,用于从链接矩阵中确定切分树。

scipy.io有所改进

scipy.io.mmwrite支持对称稀疏矩阵。

scipy.io.netcdf支持基于数据属性进行数据屏蔽和缩放。

scipy.optimize有所改进

线性分配问题求解器

scipy.optimize.linear_sum_assignment是解决线性求和分配问题的新函数。它使用匈牙利算法(Kuhn-Munkres)。

最小二乘优化

新增了一个带有约束的非线性最小二乘优化函数:scipy.optimize.least_squares。它提供了几种方法:Levenberg-Marquardt 用于无约束问题,以及两种用于约束问题的信任域方法。此外,它还提供了不同的损失函数。新的信任域方法还处理稀疏雅可比矩阵。

新增了一个带有约束的线性最小二乘优化函数:scipy.optimize.lsq_linear。它提供了一个信任域方法以及有界变量最小二乘(BVLS)算法的实现。

scipy.optimize.curve_fit现在支持带有边界的拟合。

scipy.signal有所改进

scipy.signal.spectrogram添加了mode关键字,允许返回除功率谱密度之外的其他谱图。

scipy.stats改进

许多scipy.stats中的函数增加了nan_policy关键字,允许指定如何处理带有 NaN 值的输入:传播 NaN、引发错误或省略 NaN。

许多scipy.stats中的函数已经改进,以正确处理空数组或包含 inf/nan 的输入。

scipy.statsscipy.stats.mstats中具有相同名称的多个函数现已更改为具有匹配的签名和行为。详细信息请参见gh-5474

scipy.stats.binom_testscipy.stats.mannwhitneyu增加了关键字alternative,允许指定要测试的假设。最终所有假设检验函数将获得此关键字。

对许多连续分布的方法现在接受复杂输入。

矩阵正态分布已实现为scipy.stats.matrix_normal

scipy.sparse改进

稀疏范数中添加了axis关键字,scipy.sparse.linalg.norm

scipy.spatial改进

scipy.spatial.cKDTree部分重写以提高性能,并为其添加了几个新功能:

  • query_ball_point方法变得显著更快

  • queryquery_ball_point增加了n_jobs关键字以进行并行执行

  • 构建和查询方法现在释放 GIL

  • 完全支持 pickling

  • 支持周期空间

  • sparse_distance_matrix方法现在可以返回稀疏矩阵类型

scipy.interpolate改进

scipy.interpolate.interp1d 的越界行为已经改进。使用一个两个元素的元组作为 fill_value 参数,指定插值范围下限和上限的分开填充值。scipy.interpolate.interp1d 的线性和最近邻插值方式支持通过关键字 fill_value="extrapolate" 进行外推。

fill_value 也可以设置为类数组(或两个元素的元组,分别用于下限和上限值),只要它可以正确广播到数组的非插值维度。这在之前的 scipy 版本中是隐式支持的,但现在已经正式支持并在使用前进行兼容性检查。例如,形状为 (2, 3, 5)y 值进行插值,沿最后一个轴(2)可以接受形状为 ()(单例)、(1,)(2, 1)(1, 3)(3,)(2, 3)fill_value 数组;或者可以是一个包含两个元素的元组,用于指定分开的上下界,其中每个元组元素都遵循适当的广播规则。

scipy.linalg 改进

scipy.linalg.leastsq 的默认算法已更改为使用 LAPACK 的函数 *gelsd。希望恢复到之前行为的用户可以使用一个新关键字 lapack_driver="gelss"(允许的值为 “gelss”、“gelsd” 和 “gelsy”)。

当可用时(Python 3.5+),scipy.sparse 矩阵和线性操作符现在支持 matmul(@) 操作符。详见 PEP 465

添加了一个新函数 scipy.linalg.ordqz,用于具有重新排序的 QZ 分解。

已弃用的功能

scipy.stats.histogram 已被弃用,推荐使用更快且功能相同的 np.histogram

scipy.stats.thresholdscipy.mstats.threshold 已被弃用,推荐使用 np.clip。详见问题 #617。

scipy.stats.ss 已被弃用。这是一个支持函数,不打算暴露给用户。此外,名称不太清晰。详见问题 #663。

scipy.stats.square_of_sums 已被弃用。这也是一个不打算暴露给用户的支持函数。详见问题 #665 和 #663。

scipy.stats.f_valuescipy.stats.f_value_multivariatescipy.stats.f_value_wilks_lambdascipy.mstats.f_value_wilks_lambda 已被弃用。这些函数与方差分析相关,在 scipy.stats 中的功能有限,这些函数单独使用并不太有用。详见问题 #660 和 #650。

scipy.stats.chisqprob已弃用。这是一个别名。应改用stats.chi2.sf

scipy.stats.betai已弃用。这是special.betainc的别名,应改用它。

不兼容的后向变更

函数stats.trim1stats.trimboth现在确保修剪的元素是最低和/或最高的,具体取决于情况。之前对未排序输入进行切片修剪是行不通的。

variable_names设置为空列表时,scipy.io.loadmat现在会正确返回 MAT 文件的空值,而不是所有内容。

稀疏矩阵的逐元素乘法现在在所有情况下返回稀疏结果。以前,将稀疏矩阵与密集矩阵或数组相乘会返回密集矩阵。

函数misc.lena由于许可证不兼容已被移除。

sparse.coo_matrix的构造函数不再接受(None, (m,n))来构建形状为(m,n)的全零矩阵。此功能至少自 2007 年起已弃用,并在之前的 SciPy 版本中已经失效。请改用coo_matrix((m,n))

linalg.cython_lapack中的 Cython 包装器用于 LAPACK 例程*gegs*gegv*gelsx*geqpf*ggsvd*ggsvp*lahrd*latzm*tzrqf已被移除,因为这些例程不再包含在新的 LAPACK 3.6.0 版本中。除了*ggsvd*ggsvp例程外,这些例程已全部弃用,而我们当前的 Cython LAPACK 包装器中提供的例程被视为优选。

因为 LAPACK 3.6.0 中移除了*gegv例程。对应的 Python 包装器在scipy.linalg.lapack中已被弃用,并将在未来的版本中移除。这些例程的源文件已作为scipy.linalg的一部分暂时包含,以便 SciPy 可以构建在不提供这些弃用例程的 LAPACK 版本上。

其他变更

Scipy 开发版本的 HTML 和 PDF 文档现在在每次合并的拉取请求后会自动重建。

scipy.constants已更新为 CODATA 2014 推荐值。

Scipy 内部使用scipy.fftpack函数的方式已更改,以便PyFFTW可以轻松替换scipy.fftpack函数(性能得到改善)。详细信息请参见gh-5295

scipy.miscscipy.ndimage中的imread函数已统一,scipy.misc.imread增加了一个mode参数。此外,修复了 1 位和索引 RGB 图像格式的错误。

runtests.py,用于构建和测试 Scipy 的开发脚本,现在支持使用 --parallel 并行构建。

作者

  • @cel4 +

  • @chemelnucfin +

  • @endolith

  • @mamrehn +

  • @tosh1ki +

  • Joshua L. Adelman +

  • Anne Archibald

  • Hervé Audren +

  • Vincent Barrielle +

  • Bruno Beltran +

  • Sumit Binnani +

  • Joseph Jon Booker

  • Olga Botvinnik +

  • Michael Boyle +

  • Matthew Brett

  • Zaz Brown +

  • Lars Buitinck

  • Pete Bunch +

  • Evgeni Burovski

  • CJ Carey

  • Ien Cheng +

  • Cody +

  • Jaime Fernandez del Rio

  • Ales Erjavec +

  • Abraham Escalante

  • Yves-Rémi Van Eycke +

  • Yu Feng +

  • Eric Firing

  • Francis T. O’Donovan +

  • André Gaul

  • Christoph Gohlke

  • Ralf Gommers

  • Alex Griffing

  • Alexander Grigorievskiy

  • Charles Harris

  • Jörn Hees +

  • Ian Henriksen

  • Derek Homeier +

  • David Menéndez Hurtado

  • Gert-Ludwig Ingold

  • Aakash Jain +

  • Rohit Jamuar +

  • Jan Schlüter

  • Johannes Ballé

  • Luke Zoltan Kelley +

  • Jason King +

  • Andreas Kopecky +

  • Eric Larson

  • Denis Laxalde

  • Antony Lee

  • Gregory R. Lee

  • Josh Levy-Kramer +

  • Sam Lewis +

  • François Magimel +

  • Martín Gaitán +

  • Sam Mason +

  • Andreas Mayer

  • Nikolay Mayorov

  • Damon McDougall +

  • Robert McGibbon

  • Sturla Molden

  • Will Monroe +

  • Eric Moore

  • Maniteja Nandana

  • Vikram Natarajan +

  • Andrew Nelson

  • Marti Nito +

  • Behzad Nouri +

  • Daisuke Oyama +

  • Giorgio Patrini +

  • Fabian Paul +

  • Christoph Paulik +

  • Mad Physicist +

  • Irvin Probst

  • Sebastian Pucilowski +

  • Ted Pudlik +

  • Eric Quintero

  • Yoav Ram +

  • Joscha Reimer +

  • Juha Remes

  • Frederik Rietdijk +

  • Rémy Léone +

  • Christian Sachs +

  • Skipper Seabold

  • Sebastian Skoupý +

  • Alex Seewald +

  • Andreas Sorge +

  • Bernardo Sulzbach +

  • Julian Taylor

  • Louis Tiao +

  • Utkarsh Upadhyay +

  • Jacob Vanderplas

  • Gael Varoquaux +

  • Pauli Virtanen

  • Fredrik Wallner +

  • Stefan van der Walt

  • James Webber +

  • Warren Weckesser

  • Raphael Wettinger +

  • Josh Wilson +

  • Nat Wilson +

  • Peter Yin +

一共有 101 位贡献者参与了这次发布。在其名字后带有“+”的人员首次贡献了补丁。此名单自动生成,可能不完全。

0.17.0 关闭的问题

  • #1923: 在 stats.poisson.rvs 中的 numpy 0 存在问题 (Trac #1398)

  • #2138: scipy.misc.imread 在 1 位 PNG 上段错误 (Trac #1613)

  • #2237: 分布不接受复数参数 (Trac #1718)

  • #2282: scipy.special.hyp1f1(0.5, 1.5, -1000) 失败 (Trac #1763)

  • #2618: 当 mu 为 0 时,poisson.pmf 返回 NaN

  • #2957: hyp1f1 精度问题

  • #2997: FAIL: test_qhull.TestUtilities.test_more_barycentric_transforms

  • #3129: 在 Optimize 函数中设置拟合参数的范围无效

  • #3191: interp1d 应包含 fill_value_below 和 fill_value_above…

  • #3453: PchipInterpolator 在边缘处设置斜率与 Matlab 的不同…

  • #4106: ndimage._ni_support._normalize_sequence() 与 numpy.int64 失败

  • #4118: scipy.integrate.ode.set_soloutscipy.integrate.ode.set_initial_value 之后静默失败

  • #4233: 1D scipy.interpolate.griddata 使用 method=nearest 产生 NaNs…

  • #4375: 所有测试因文件权限错误而失败

  • #4580: scipy.ndimage.filters.convolve 文档错误

  • #4627: 带有符号指示器的 logsumexp - 允许负数计算…

  • #4702: 带有零缩放因子的 logsumexp

  • #4834: 对于无限 x,gammainc 应返回 1.0 而不是 NaN

  • #4838: enh: exprel 特殊函数

  • #4862: scipy.special.boxcox 函数对非正常值不准确…

  • #4887: 球谐函数不一致

  • #4895: 一些 scipy ufuncs 输出数据类型不一致?

  • #4923: logm 不主动将复杂输出转换为浮点数

  • #4932: BUG: stats: distributions 的 fit 方法悄悄忽略…

  • #4956: scipy.special.bi_zeros 中的文档错误

  • #4957: pbvv_seq 的文档字符串错误

  • #4967: block_diag 应查看所有参数的 dtypes,而不仅仅是…

  • #5037: scipy.optimize.minimize 错误消息打印到 stdout…

  • #5039: 三次插值:进入 DGESDD 的第 12 个参数出现问题…

  • #5163: 层次聚类的基本案例示例(提供)

  • #5181: BUG: stats.genextreme.entropy 应使用显式公式

  • #5184: 某些 wheels 未表达 numpy 依赖关系

  • #5197: mstats: test_kurtosis 失败(ULP max 为 2)

  • #5260: splrep 中的拼写错误导致错误

  • #5263: rbf.py 中默认的 epsilon 对共线点失败

  • #5276: 读取空(无数据)arff 文件失败

  • #5280: 1d scipy.signal.convolve 比 numpy.convolve 慢得多

  • #5326: scipy.interpolate.PchipInterpolator 实现中的错误

  • #5370: test_quadpack 和 libm.so 作为链接器脚本的测试问题

  • #5426: ERROR: test_stats.test_chisquare_masked_arrays

  • #5427: 在 numpy-vendor 映像中自动安装正确的 numpy 版本

  • #5430: Python3 中,Numpy 标量类型“不可迭代”;特定实例...

  • #5450: 当输入 nans 时,spatial.ConvexHull 触发 seg. fault

  • #5478: 澄清矩阵正态分布与 multivariate_normal 的关系

  • #5539: numpy-vendor 的 Windows 二进制文件中与 lstsq 相关的测试失败

  • #5560: 文档:scipy.stats.burr pdf 问题

  • #5571: lapack_driver 更改后,lstsq 测试失败

  • #5577: 在 Python 3.4 中,Wine 上的 ordqz 引发 segfault

  • #5578: scipy.linalg 在 Wine 中的 Python 3 上的测试失败

  • #5607: 使用 clang++ 编译时,重载的 isnan(double&) 不明确

  • #5629: lstsq 随机失败的测试

  • #5630: scipy 0.16 spatial cKDEtree 存在内存泄漏

  • #5689: 编译 scipy/special/Faddeeva.cc 时出现 isnan 错误

  • #5694: test_import 中的 fftpack 测试失败

  • #5719: curve_fit(method!=”lm”) 忽略初始猜测

0.17.0 的拉取请求

  • #3022: hyp1f1:对大负数参数的更好处理

  • #3107: 增强:添加有序 QZ 分解

  • #4390: 增强:允许 axis 和 keepdims 参数传递给 scipy.linalg.norm。

  • #4671: 增强:sparse norms 添加 axis

  • #4796: 增强:在 scipy.cluster.hierarchy 中添加 cut tree 函数

  • #4809: cauchy moments 未定义的维护

  • #4821: ENH:stats:使分布实例可被 pickle 序列化。

  • #4839: ENH:添加 scipy.special.exprel 相对误差指数函数。

  • #4859: Logsumexp 修复 - 允许符号标志和 b==0。

  • #4865: BUG:scipy.io.mmio.write:处理大索引和低精度时出错。

  • #4869: 在 _lib._util._asarray_validated 中添加 as_inexact 选项。

  • #4884: ENH:有限差分逼近雅可比矩阵。

  • #4890: ENH:将 cKDTree 查询方法移植到 C++,允许 Python 中 pickling…

  • #4892: doctesting 过多了吗?

  • #4896: MAINT:解决可能的 numpy ufunc 循环选择 bug。

  • #4898: MAINT:根据 pyflakes 进行一些清理。

  • #4899: ENH:在 stats 中为假设检验添加'alternative'关键字。

  • #4903: BENCH:interpolate 模块的基准测试。

  • #4905: MAINT:为 mask_to_limits 添加下划线前缀;删除 masked_var。

  • #4906: MAINT:optimize.leastsq 的基准测试。

  • #4910: WIP:修剪统计函数具有不一致的 API。

  • #4912: MAINT:修正 stats 教程中的拼写错误。关闭 gh-4911。

  • #4914: DEP:弃用scipy.stats.ssscipy.stats.square_of_sums

  • #4924: MAINT:如果实部矩阵的 logm 的虚部很小,…

  • #4930: BENCH:signal 模块的基准测试。

  • #4941: ENH:更新find_repeats

  • #4942: MAINT:在 cKDTree 中使用 np.float64_t 而不是 np.float_t。

  • #4944: BUG:correlate_nd 中的整数溢出。

  • #4951: 不要忽略分布 fit 方法中的无效 kwargs。

  • #4958: 为特殊函数的 docstrings 添加一些细节。

  • #4961: ENH:stats.describe:添加 bias 关键字和空数组处理。

  • #4963: ENH:scipy.sparse.coo.coo_matrix.init:需要更少的内存。

  • #4968: DEP:弃用stats.f_value*mstats.f_value*函数。

  • #4969: ENH:审查stats.relfreqstats.cumfreq;修复stats.histogram

  • #4971: Extend github source links to line ranges

  • #4972: MAINT: impove the error message in validate_runtests_log

  • #4976: DEP: deprecate scipy.stats.threshold

  • #4977: MAINT: more careful dtype treatment in block diagonal matrix…

  • #4979: ENH: distributions, complex arguments

  • #4984: clarify dirichlet distribution error handling

  • #4992: ENH: stats.fligner and stats.bartlett empty input handling.

  • #4996: DOC: fix stats.spearmanr docs

  • #4997: Fix up boxcox for underflow / loss of precision

  • #4998: DOC: improved documentation for stats.ppcc_max

  • #5000: ENH: added empty input handling scipy.moment; doc enhancements

  • #5003: ENH: improves rankdata algorithm

  • #5005: scipy.stats: numerical stability improvement

  • #5007: ENH: nan handling in functions that use stats._chk_asarray

  • #5009: remove coveralls.io

  • #5010: Hypergeometric distribution log survival function

  • #5014: Patch to compute the volume and area of convex hulls

  • #5015: DOC: Fix mistaken variable name in sawtooth

  • #5016: DOC: resample example

  • #5017: DEP: deprecate stats.betai and stats.chisqprob

  • #5018: ENH: Add test on random inpu to volume computations

  • #5026: BUG: Fix return dtype of lil_matrix.getnnz(axis=0)

  • #5030: DOC: resample slow for prime output too

  • #5033: MAINT: integrate, special: remove unused R1MACH and Makefile

  • #5034: MAINT: signal: lift max_len_seq validation out of Cython

  • #5035: DOC/MAINT: refguide / doctest drudgery

  • #5041: BUG: fixing some small memory leaks detected by cppcheck

  • #5044: [GSoC] ENH: New least-squares algorithms

  • #5050: MAINT: C fixes, trimmed a lot of dead code from Cephes

  • #5057: ENH: sparse: avoid densifying on sparse/dense elementwise mult

  • #5058: 测试:stats:在测试循环中添加一个样本分布

  • #5061: 增强:空间:更快的 2D Voronoi 和 Convex Hull 绘图

  • #5065: 测试:改进 stats.mvsdiststats.bayes_mvs 的测试覆盖率

  • #5066: 维护:fitpack:移除一个空操作

  • #5067: 增强:stats.kstatstats.kstatvar 的空和 nan 输入处理

  • #5071: 文档:优化库:修正文献引用,添加 DOI

  • #5072: 维护:scipy.sparse 清理

  • #5073: 文档:特殊函数库:添加一个示例,展示 diric 函数与…

  • #5075: 文档:澄清 stats.lognorm 的参数化

  • #5076: 使用 int, float, bool 而不是 np.int, np.float, np.bool

  • #5078: 文档:将 fftpack 文档重命名为 README

  • #5081: BUG:在 lsmr 和 lsqr 中正确处理标量 'b'

  • #5082: loadmat 变量名:避免混淆 [] 和 None。

  • #5083: 修复 integrate.fixed_quad 文档字符串以指示 None 返回值

  • #5086: 使用 solve() 替代 gaussian_kde 的 inv()

  • #5090: 维护:统计库:显式添加 _sf, _isf 到 gengamma 分布

  • #5094: 增强:scipy.interpolate.NearestNDInterpolator:cKDTree 可配置

  • #5098: 文档:特殊函数库:修复 *_roots 和积分函数的排版

  • #5099: 文档:使 stats.moment 的文档字符串原始

  • #5104: 文档/增强:修复和微小优化 scipy.linalg

  • #5105: 增强:为最大线搜索次数添加 l-bfgs-b 参数…

  • #5106: 测试:为 stats.f_oneway 添加 NIST 测试用例

  • #5110: [GSoC]:有界线性最小二乘

  • #5111: 维护:特殊函数库:Cephes 清理

  • #5118: BUG:在 lfilter 中如果 len(x) < len(b) 则 FIR 路径失败。

  • #5124: 增强:将 filliben 近似移到一个公开可见的函数

  • #5126: 统计清理:stats.kruskal 回顾

  • #5130: 文档:更新 PyPi trove 分类。Beta -> Stable。添加许可证。

  • #5131: DOC: differential_evolution,改进 mutation 和… 的文档字符串

  • #5132: MAINT: differential_evolution 改进 init_population_lhs 的注释…

  • #5133: MRG: 重基础化的 mmio 重构

  • #5135: MAINT: stats.mstatsstats.stats 的一致性

  • #5139: TST: linalg:为 gh-5039 添加一个烟雾测试

  • #5140: EHN: 将 constants.codata 更新到 CODATA 2014

  • #5145: 在文档字符串中添加 ValueError 作为可能引发的错误

  • #5146: MAINT: 改进 stats.shapiro 的实现细节和文档

  • #5147: [GSoC] ENH: 对 curve_fit 的升级

  • #5150: 修正误导的小波 / 连续小波变换示例

  • #5152: BUG: cluster.hierarchy.dendrogram:缺少字体大小…

  • #5153: 添加关键字以控制离散分布中的求和…

  • #5156: DOC: 添加在勒让德函数中使用的算法的注释

  • #5158: ENH: 优化:添加匈牙利算法

  • #5162: FIX: 移除 lena

  • #5164: MAINT: 修复 cluster.hierarchy.dendrogram 的问题和文档

  • #5166: MAINT: 将 stats.pointbiserialr 修改为委托给 stats.pearsonr

  • #5167: ENH: 在 stats.kendalltau 中添加 nan_policy 选项。

  • #5168: TST: 在 stats.linregress 中添加 nist 测试用例(Norris)。

  • #5169: 更新 lpmv 文档字符串

  • #5171: 在 linkage 文档字符串中澄清度量参数

  • #5172: ENH: 添加 mode 关键字到 signal.spectrogram

  • #5177: DOC: KDTree.query_ball_point 的图形示例

  • #5179: MAINT: stats:调整 ncx2.pdf 的公式

  • #5188: MAINT: linalg:一些清理。

  • #5189: BUG: stats:在 stats.genextreme.entropy 中使用显式公式

  • #5193: BUG: 修复 lartg 中未初始化的使用

  • #5194: BUG: 从 ode_jacobian_function 向 Fortran 适当返回错误

  • #5198: TST: 修复 Python 3.5 下 Windows 的 TestCtypesQuad 失败

  • #5201: 允许 interp1d 中的外推

  • #5209: 维护:在 Y_() 中将复杂参数更改为布尔值

  • #5213: BUG:稀疏:修复逻辑比较 dtype 冲突

  • #5216: BUG:稀疏:修复未绑定的本地错误

  • #5218: 文档和 BUG:贝塞尔函数文档字符串改进,修复 array_like,……

  • #5222: 维护:稀疏:修复 COO 构造函数

  • #5224: 文档:优化:OptimizeResult.hess_inv 的类型变化

  • #5228: 增强:为 netcdf 添加 maskandscale 支持;基于 pupynere 和……

  • #5229: 文档:sparse.linalg.svds 文档中的拼写错误修正

  • #5234: 维护:稀疏:简化 COO 构造函数

  • #5235: 维护:稀疏:对具有多个对角线的 todia() 进行警告

  • #5236: 维护:ndimage:简化线程处理/递归 + constness

  • #5239: BUG:集成:修复问题 4118

  • #5241: qr_insert 修复,关闭 #5149

  • #5246: Doctest 教程文件

  • #5247: 文档:优化:linear_sum_assignment 中的拼写错误/导入修复

  • #5248: 移除 inspect.getargspec 并在 Travis CI 上测试 Python 3.5

  • #5250: BUG:修复稀疏矩阵乘以单个元素零

  • #5261: 修复导致 splrep 中 TypeError 的 bug

  • #5262: 对 4489 的后续(在 linalg.lstsq 中添加 LAPACK 例程)

  • #5264: 默认 epsilon 忽略零长度边缘

  • #5269: 文档:拼写错误和拼写检查

  • #5272: 维护:信号:将数组语法转换为内存视图

  • #5273: 文档:带有数学公式的文档字符串的原始字符串

  • #5274: 维护:稀疏:为 MST 更新 Cython 代码

  • #5278: BUG:io:停止猜测 ARFF 文件中的数据分隔符。

  • #5289: BUG:杂项:修复 1 位图像的 Pillow 工作区绕过。

  • #5291: 增强:在 scipy.signal.correlate 中为 1d 调用 np.correlate

  • #5294: 文档:特殊:从……中删除一个潜在误导的示例

  • #5295: 简化替换 fftpack 为 pyfftw

  • #5296: 增强:将矩阵正态分布添加到 stats

  • #5297: 修复 Python 3 中的 leaf_rotation 和 leaf_font_size

  • #5303: MAINT: stats: 重写 find_repeats

  • #5307: MAINT: stats: 删除未使用的 Fortran 例程

  • #5313: BUG: sparse: 修复非方阵矩阵的 diags

  • #5315: MAINT: special: Cephes 清理

  • #5316: 修复 sparse.linalg.svds 的输入检查

  • #5319: MAINT: Cython 代码维护

  • #5328: BUG: 修复 place_poles 的返回值

  • #5329: 避免在 Student t 统计量中出现虚假的除以零

  • #5334: MAINT: integrate: 杂项清理

  • #5340: MAINT: 将错误消息打印到 STDERR 并删除 iterate.dat

  • #5347: ENH: 添加 Py3.5 风格的 matmul 操作符(例如 A @ B)到稀疏线性…

  • #5350: 修复读取 32 位浮点 wav 文件时出错

  • #5351: 重构 PCHIP 插值器的算法

  • #5354: MAINT: 从整数列表构造 csr 和 csc 矩阵

  • #5359: 添加 interp1d 的快速路径

  • #5364: 在 interp1d 中添加两个 fill_values。

  • #5365: ABCD 文档字符串

  • #5366: 修复 scipy.signal.cwt() 文档中的拼写错误,按 #5290。

  • #5367: DOC 更新 scipy.spatial.Delaunay 示例

  • #5368: ENH: 不再在每次函数调用时创建一次性类

  • #5372: DOC: spectral: 修复参考格式

  • #5375: PEP8 修正 ffpack_basic.py

  • #5377: BUG: integrate: 内置名称不再被遮蔽

  • #5381: 将 fftpack_pseudo_diffs.py PEP8 化

  • #5385: BLD: 修复 Bento 构建以适应对 optimize 和 spatial 的更改

  • #5386: STY: PEP8 修正 interpolate.py

  • #5387: DEP: 废弃 stats.histogram

  • #5388: REL: 向 doc/Makefile 添加 “make upload” 命令。

  • #5389: DOC: 更新 scipy.ndimage.filters.convolve 的 origin 参数

  • #5395: BUG: special: 修复与 x = np.inf 相关的多个边界情况

  • #5398: 维护:stats:避免在 lognorm.pdf(0, s) 中出现虚假警告

  • #5407: 增强:stats:在 stats.poisson 中处理 mu=0

  • #5409: 修复离散分布在右端行为的问题...

  • #5412: 测试:stats:跳过测试以避免虚假 log(0) 警告

  • #5413: 错误修复:linalg:解决 LAPACK 单精度 lwork 计算的问题...

  • #5414: 维护:stats:将命名元组的创建移到函数外部...

  • #5415: 文档:修复 pdf 参考指南中目录中的部分问题

  • #5416: 测试:在 Fedora 上修复 integrate 上 ctypes 测试的问题。

  • #5418: 文档:修复 signal.TransferFunction 文档字符串中的错误。关闭 gh-5287。

  • #5419: 维护:sparse:修复 NotImplementedError 的使用

  • #5420: 如果 maxiter < 1,则引发适当的错误

  • #5422: 文档:修改 brent 的文档以保持与 bracket 一致

  • #5444: 错误修复:gaussian_filter, BPoly.from_derivatives 在 numpy int 上失败...

  • #5445: 维护:stats:修复不正确的弃用警告和测试噪音

  • #5446: 文档:在 fftpack 教程中添加关于 PyFFTW 的注释。

  • #5459: 文档:整合:改进常微分方程的一些部分...

  • #5465: 错误修复:通过几个 ulp 放宽 mstats 峰度测试的容差

  • #5471: ConvexHull 对 NaN 应该引发 ValueError。

  • #5473: 维护:更新 decorators.py 模块至版本 4.0.5

  • #5476: 错误修复:imsave 在图像有 3 个或... 时搜索错误的通道轴

  • #5477: 构建:为 OS X wheels 添加 numpy 到 setup/install_requires

  • #5479: 增强:从 BasinHopping 返回 Jacobian/Hessian

  • #5484: 错误修复:修复 ttest 零除处理

  • #5486: 修复 kmeans2 的崩溃问题

  • #5491: 维护:向 runtests.py 暴露并行构建选项

  • #5494: 按键对 OptimizeResult.repr 进行排序

  • #5496: 文档:更新作者姓名映射

  • #5497: binned_statistic 的增强:返回的选项解开...

  • #5498: BUG: sparse: 修复 sparsetools 输入数据类型解析中的错误

  • #5500: DOC: 检测文档字符串中的不可打印字符

  • #5505: BUG: misc: 确保 fromimage 将模式 ‘P’ 转换为 ‘RGB’ 或 ‘RGBA’。

  • #5514: DOC: 进一步更新发布说明

  • #5515: ENH: 可选择禁用固定点加速

  • #5517: DOC: 改进和添加矩阵正态文档

  • #5518: 移除 LAPACK 废弃例程的包装器

  • #5521: TST: 在 32 位平台上跳过 linalg.orth 内存测试。

  • #5523: DOC: 在文档字符串示例中将一些浮点数改为整数

  • #5524: DOC: 更新至 0.17.0 版本发布说明

  • #5525: 修复 scipy.integrate.ode 文档中的小错误

  • #5527: TST: 提高 arccosh 容差,以允许不精确的 numpy 或…

  • #5535: DOC: signal: 对 TransferFunction 的文档字符串进行小修正。

  • #5538: DOC: 修正 find_peaks_cwt 文档

  • #5545: MAINT: 修复 linalg/basic.py 中的拼写错误

  • #5547: TST: 在主分支中将 TestEig.test_singular 标记为已知失败。

  • #5550: MAINT: 解决 lstsq 驱动程序选择问题

  • #5556: BUG: 修复了损坏的 dogbox 信任域半径更新

  • #5561: BUG: 消除测试中的警告和异常(在 Windows 上);…

  • #5567: TST: 在测试套件中进行了一些清理;运行模块套件和更清晰的…

  • #5568: MAINT: 简化泊松分布的 _argcheck

  • #5569: TST: 提高 GMean 测试的容差,以在 Wine 上通过测试

  • #5572: TST: lstsq: 提高 TravisCI 的测试容差

  • #5573: TST: 移除 cluster.vq 测试中的 np.fromfile 使用

  • #5576: Lapack 废弃

  • #5579: TST: 在 numpy <= 1.7.x 上跳过对 linalg.norm 轴关键字的测试

  • #5582: 澄清生存函数文档的语言

  • #5583: MAINT: stats/tests: 进行一些清理。

  • #5588: DOC: stats: 添加一条说明,说明 stats.burr 是第三类 Burr 分布。

  • #5595: TST:修复 Python 3 上的 test_lamch 失败

  • #5600: MAINT:忽略 spatial/ckdtree.cxx 和 .h

  • #5602: 为了可维护性显式编号替换字段

  • #5605: MAINT:对测试套件的一系列小修复

  • #5614: 文档微小更改

  • #5624: FIX:修复 interpolate

  • #5625: BUG:msvc9 二进制文件在索引大小为 0 的 std::vector 时崩溃

  • #5635: BUG:在 cKDTree 中拼写错误的 dealloc

  • #5642: STY:修复 0.17.0 发布说明的格式

  • #5643: BLD:修复 special/Faddeeva.cc 中与 isnan 相关的构建问题

  • #5661: TST:linalg 测试使用 stdlib 的随机而不是 numpy.random

  • #5682: 0.17.0 的后移

  • #5696: least_squares 的文档字符串微小改进

  • #5697: BLD:修复 special/Faddeeva.cc 中 isnan/isinf 的问题

  • #5720: TST:修复 fftpack test_import.py 中的文件打开错误

  • #5722: BUG:使 curve_fit 在有界初始猜测时能够得到尊重

  • #5726: v0.17.0rc2 的后移

  • #5727: API:对 least_squares API 进行更改

SciPy 0.16.1 Release Notes

Original text:docs.scipy.org/doc/scipy-1.12.0/release/0.16.1-notes.html

SciPy 0.16.1 is a bug-fix release with no new features compared to 0.16.0.

Issues closed for 0.16.1

  • #5077: cKDTree not indexing properly for arrays with too many elements

  • #5127: Regression in 0.16.0: solve_banded errors out in patsy test suite

  • #5149: linalg tests apparently cause python to crash with numpy 1.10.0b1

  • #5154: 0.16.0 fails to build on OS X; can’t find Python.h

  • #5173: failing stats.histogram test with numpy 1.10

  • #5191: Scipy 0.16.x - TypeError: _asarray_validated() got an unexpected…

  • #5195: tarballs missing documentation source

  • #5363: FAIL: test_orthogonal.test_j_roots, test_orthogonal.test_js_roots

Pull requests for 0.16.1

  • #5088: BUG: fix logic error in cKDTree.sparse_distance_matrix

  • #5089: BUG: Don’t overwrite b in lfilter’s FIR path

  • #5128: BUG: solve_banded failed when solving 1x1 systems

  • #5155: BLD: fix missing Python include for Homebrew builds.

  • #5192: BUG: backport as_inexact kwarg to _asarray_validated

  • #5203: BUG: fix uninitialized use in lartg 0.16 backport

  • #5204: BUG: properly return error to fortran from ode_jacobian_function…

  • #5207: TST: Fix TestCtypesQuad failure on Python 3.5 for Windows

  • #5352: TST: sparse: silence warnings about boolean indexing

  • #5355: MAINT: backports for 0.16.1 release

  • #5356: REL: update Paver file to ensure sdist contents are OK for releases.

  • #5382: 0.16.x backport: MAINT: work around a possible numpy ufunc loop…

  • #5393: TST:special: bump tolerance levels for test_j_roots and test_js_roots

  • #5417: MAINT: stats: move namedtuple creating outside function calls.

SciPy 0.16.0 发布说明

原文链接:docs.scipy.org/doc/scipy-1.12.0/release/0.16.0-notes.html

目录

  • SciPy 0.16.0 发布说明

    • 新功能

      • 基准套件

      • scipy.linalg 改进

      • scipy.signal 改进

      • scipy.sparse 改进

      • scipy.spatial 改进

      • scipy.stats 改进

      • scipy.optimize 改进

    • 已弃用功能

    • 向后不兼容的更改

    • 其他变更

    • 作者

      • 0.16.0 关闭的问题

      • 0.16.0 的拉取请求

SciPy 0.16.0 是 7 个月努力的成果。它包含许多新功能、大量错误修复、改进的测试覆盖率和更好的文档。此版本有一些已弃用的功能和 API 更改,以下有详细文档。建议所有用户升级到此版本,因为有大量的错误修复和优化。此外,我们的开发注意力现在将转移到 0.16.x 分支的错误修复发布,并在主分支上添加新功能。

此版本需要 Python 2.6、2.7 或 3.2-3.4 和 NumPy 1.6.2 或更高版本。

本次发布的亮点包括:

  • scipy.linalg 中的 BLAS/LAPACK 的 Cython API

  • 一个新的基准套件。现在可以轻松添加新的基准测试,并且它们常规地随性能增强的 PRs 一起包含。

  • scipy.signal 中支持二阶段(SOS)格式。

新功能

基准套件

基准套件现在使用 Airspeed Velocity 进行基准测试。您可以通过 python runtests.py --bench 在本地运行套件。有关更多详细信息,请参阅 benchmarks/README.rst

scipy.linalg 改进

在模块 scipy.linalg.cython_blasscipy.linalg.cython_lapack 中添加了 BLAS 和 LAPACK 的完整 Cython 包装器。在 Cython 中,这些包装器现在可以从其相应的模块中 cimport 并且可以在不直接链接到 BLAS 或 LAPACK 的情况下使用。

函数scipy.linalg.qr_deletescipy.linalg.qr_insertscipy.linalg.qr_update 用于更新 QR 分解。

函数scipy.linalg.solve_circulant 可解决具有循环系数矩阵的线性系统。

函数scipy.linalg.invpascal 计算 Pascal 矩阵的逆。

函数scipy.linalg.solve_toeplitz,一个 Levinson-Durbin Toeplitz 求解器,已添加。

添加了对可能有用的 LAPACK 函数*lasd4的包装器。它计算正对称秩一修正的正对角矩阵的第 i 个更新特征值的平方根。详见其 LAPACK 文档和单元测试以获取更多信息。

添加了两个额外的 LAPACK 最小二乘解算器的包装器。它们分别是*gelsd*gelsy

添加了计算各种矩阵范数的 LAPACK *lange函数的包装器。

添加了解决三对角矩阵A*X = B的 LAPACK *gtsv*ptsv的包装器。

scipy.signal 改进

添加了对二阶段(SOS)作为 IIR 滤波器格式的支持。新的函数包括:

  • scipy.signal.sosfilt

  • scipy.signal.sosfilt_zi,

  • scipy.signal.sos2tf

  • scipy.signal.sos2zpk

  • scipy.signal.tf2sos

  • scipy.signal.zpk2sos

此外,滤波器设计函数iirdesigniirfilterbuttercheby1cheby2ellipbessel可以以 SOS 格式返回滤波器。

函数scipy.signal.place_poles,提供了两种方法来为线性系统放置极点,已添加。

scipy.signal.filtfilt 中添加了使用 Gustafsson 方法选择正向和反向传递的初始条件的选项。

新增了 TransferFunctionStateSpaceZerosPolesGain 类。在实例化 scipy.signal.lti 时,现在返回这些类。现在可以显式地在这些类之间进行转换。

添加了指数(泊松)窗口作为 scipy.signal.exponential,添加了 Tukey 窗口作为 scipy.signal.tukey

添加了计算数字滤波器组延迟的函数 scipy.signal.group_delay

光谱分析和谱密度估计功能显著改进:scipy.signal.welch 的速度提高了约 8 倍,新增了函数 scipy.signal.spectrogramscipy.signal.coherencescipy.signal.csd(交叉谱密度)。

scipy.signal.lsim 已重写 - 解决了所有已知问题,因此现在可以使用此函数代替 lsim2;在大多数情况下,lsimlsim2 快几个数量级。

scipy.sparse 改进

函数 scipy.sparse.norm,用于计算稀疏矩阵范数,已添加。

添加了允许从任意分布中绘制随机变量的函数 scipy.sparse.random

scipy.spatial 改进

scipy.spatial.cKDTree 经历了一次重大重写,显著提高了query方法的性能,增加了对并行查询、pickling 和影响树布局的选项的支持。详细信息请参见 pull request 4374。

添加了用于 Procrustes 分析(统计形状分析)的函数 scipy.spatial.procrustes

scipy.stats 改进

已添加了 Wishart 分布及其逆,分别为 scipy.stats.wishartscipy.stats.invwishart

已添加指数修正正态分布作为 scipy.stats.exponnorm

已添加广义正态分布作为 scipy.stats.gennorm

所有分布现在都包含一个 random_state 属性,并允许在生成随机变量时指定特定的 numpy.random.RandomState 随机数生成器。

许多统计测试和其他多返回值的 scipy.stats 函数现在返回 namedtuples。详见拉取请求 4709。

改进的 scipy.optimize

已向非线性方程系统求解函数 scipy.optimize.root 添加了新的无导数方法 DF-SANE。

已弃用的功能

scipy.stats.pdf_fromgamma 已被弃用。这个函数未记录、未经测试且使用稀少。Statsmodels 提供了与 statsmodels.distributions.ExpandedNormal 等效的功能。

scipy.stats.fastsort 已被弃用。这个函数是不必要的,可以使用 numpy.argsort 替代。

scipy.stats.signaltonoisescipy.stats.mstats.signaltonoise 已弃用。这些函数不应存在于 scipy.stats 中,且使用极少。详见问题 #609。

scipy.stats.histogram2 已被弃用。这个函数是不必要的,可以使用 numpy.histogram2d 替代。

不兼容的变更

已移除了不推荐使用的全局优化器 scipy.optimize.anneal

已移除以下弃用模块:scipy.lib.blasscipy.lib.lapackscipy.linalg.cblasscipy.linalg.fblasscipy.linalg.clapackscipy.linalg.flapack。这些模块自 Scipy 0.12.0 弃用,其功能应作为 scipy.linalg.blasscipy.linalg.lapack 访问。

已移除了不推荐使用的函数 scipy.special.all_mat

已移除了不推荐使用的函数 fprobksprobzprobrandwcdfrandwppf,它们来自 scipy.stats

其他变更

开发版本的版本编号已更新以符合 PEP 440 规范。

现在支持使用 python setup.py develop 进行构建。

作者

  • @axiru +

  • @endolith

  • Elliott Sales de Andrade +

  • Anne Archibald

  • Yoshiki Vázquez Baeza +

  • Sylvain Bellemare

  • Felix Berkenkamp +

  • Raoul Bourquin +

  • Matthew Brett

  • Per Brodtkorb

  • Christian Brueffer

  • Lars Buitinck

  • Evgeni Burovski

  • Steven Byrnes

  • CJ Carey

  • George Castillo +

  • Alex Conley +

  • Liam Damewood +

  • Rupak Das +

  • Abraham Escalante +

  • Matthias Feurer +

  • Eric Firing +

  • Clark Fitzgerald

  • Chad Fulton

  • André Gaul

  • Andreea Georgescu +

  • Christoph Gohlke

  • Andrey Golovizin +

  • Ralf Gommers

  • J.J. Green +

  • Alex Griffing

  • Alexander Grigorievskiy +

  • Hans Moritz Gunther +

  • Jonas Hahnfeld +

  • Charles Harris

  • Ian Henriksen

  • Andreas Hilboll

  • Åsmund Hjulstad +

  • Jan Schlüter +

  • Janko Slavič +

  • Daniel Jensen +

  • Johannes Ballé +

  • Terry Jones +

  • Amato Kasahara +

  • Eric Larson

  • Denis Laxalde

  • Antony Lee

  • Gregory R. Lee

  • Perry Lee +

  • Loïc Estève

  • Martin Manns +

  • Eric Martin +

  • Matěj Kocián +

  • Andreas Mayer +

  • Nikolay Mayorov +

  • Robert McGibbon +

  • Sturla Molden

  • Nicola Montecchio +

  • Eric Moore

  • Jamie Morton +

  • Nikolas Moya +

  • Maniteja Nandana +

  • Andrew Nelson

  • Joel Nothman

  • Aldrian Obaja

  • Regina Ongowarsito +

  • Paul Ortyl +

  • Pedro López-Adeva Fernández-Layos +

  • Stefan Peterson +

  • Irvin Probst +

  • Eric Quintero +

  • John David Reaver +

  • Juha Remes +

  • Thomas Robitaille

  • Clancy Rowley +

  • Tobias Schmidt +

  • Skipper Seabold

  • Aman Singh +

  • Eric Soroos

  • Valentine Svensson +

  • Julian Taylor

  • Aman Thakral +

  • Helmut Toplitzer +

  • Fukumu Tsutsumi +

  • Anastasiia Tsyplia +

  • Jacob Vanderplas

  • Pauli Virtanen

  • Matteo Visconti +

  • Warren Weckesser

  • Florian Wilhelm +

  • Nathan Woods

  • Haochen Wu +

  • Daan Wynen +

本次发布共有 93 人参与贡献。以“+”标记的人是首次贡献补丁。这个名单是自动生成的,可能并非完全完整。

0.16.0 的已关闭问题

  • #1063: 实现 Wishart 分布 (Trac #536)

  • #1885: Rbf: 浮点警告 - 可能的 bug (Trac #1360)

  • #2020: Rbf 默认的 epsilon 太大 (Trac #1495)

  • #2325: 扩展分布,例如超几何到退化案例 (Trac…

  • #3502: [增强] linalg.hessenberg 应使用 ORGHR 用于 calc_q=True

  • #3603: 将数组作为窗口传递给 signal.resample() 失败

  • #3675: 在 Windows 上 signal.slepian 出现间歇性故障

  • #3742: Pchipinterpolator 不便于 ppoly

  • #3786: 是否添加 procrustes?

  • #3798: 空字典导致 scipy.io.savemat 失败

  • #3975: 在 scipy.stats 中使用 RandomState

  • #4022: savemat 错误地保存逻辑数组

  • #4028: scipy.stats.geom.logpmf(1,1) 返回 nan。正确的值是…

  • #4030: 简化 scipy.stats.betaprime.cdf 的文档

  • #4031: 提升 scipy.stats.gompertz 分布在小…时的准确性

  • #4033: 提升 scipy.stats.lomax 分布在小…时的准确性

  • #4034: 提升 scipy.stats.rayleigh 分布在大…时的准确性

  • #4035: 提升 scipy.stats.truncexpon 分布在小…时的准确性

  • #4081: 读取 MATLAB 文件时出错:缓冲区对请求…太小

  • #4100: 为什么 qr(a, lwork=0) 没有失败?

  • #4134: scipy.stats: rv_frozen 没有 expect() 方法

  • #4204: 请为 scipy.optimize.RootResults 添加文档字符串

  • #4206: 包装 LAPACK 三对角求解例程 gtsv

  • #4208: 写入 MAT 文件的空稀疏矩阵无法被 MATLAB 读取

  • #4217: 使用配置 TravisCI 构建带有 NPY_RELAXED_STRIDES_CHECKING=1numpy

  • #4282: integrate.odeintfull_output=1 和…时引发异常

  • #4301: scipynumpy 版本名称不符合 PEP 440

  • #4355: PPoly.antiderivative() 产生错误输出

  • #4391: 大型 b 矩阵使 spsolve 变得极慢

  • #4393: sparse.linalg.spilu 中的文档问题

  • #4408: minimize() 等中的向量约束

  • #4412: scipy.signal.cwt 的文档错误

  • #4428: dok.__setitem__ 对负索引的问题

  • #4434: sparse.linalg.spsolve 的不完整文档

  • #4438: linprog() 的文档示例有误

  • #4445: scipy.special.expit 文档中的拼写错误

  • #4467: scipy.optimize 中 TNC 选项的文档错误

  • #4492: solve_toeplitz 的基准测试已经陈旧

  • #4506: lobpcg/sparse 性能回退 Jun 2014?

  • #4520: Linux 上需要 g77_abi_wrappers 来支持 MKL

  • #4521: uses_mkl中针对新版本库的断开检查。

  • #4523: 带有高斯核的rbf似乎比原始的产生更多噪音...

  • #4526: poisson.pmf()方法的站点文档中存在错误。

  • #4527: KDTree示例在 Python 3 中无法运行。

  • #4550: scipy.stats.mode - 在空序列上出现UnboundLocalError

  • #4554: 在优化测试中滤除收敛警告。

  • #4565: odeint消息。

  • #4569: remez:“ValueError:经过 25 次迭代后未能收敛...

  • #4582: 文档:优化:_minimize_scalar_brent没有disp选项。

  • #4585: 文档:教程中存在错误的 latex 相关字符。

  • #4590: sparse.linalg.svds如果which不在...应该抛出异常。

  • #4594: 当提供回调时,scipy.optimize.linprog出现IndexError

  • #4596: scipy.linalg.block_diag在空数组输入时行为异常(v0.13.3)。

  • #4599: scipy.integrate.nquad应该在仅有...时调用_OptFunc

  • #4612: 在输入为nd的情况下,signal.lfilter中的崩溃与错误形状的zi有关。

  • #4613: 在读取sav文件时,scipy.io.readsav出现错误。

  • #4673: scipy.interpolate.RectBivariateSpline构造在读取PyQt时锁定...

  • #4681: signal.lfilter中的广播仍然不太正确。

  • #4705: kmeansk_or_guess参数的错误,如果猜测不是方形数组。

  • #4719: 在 14.04.2 上构建失败。

  • #4724: GenGamma _munp函数因溢出而失败。

  • #4726: 失败:test_cobyla.test_vector_constraints

  • #4734: 在stats中与numpy master版本相关的失败测试。

  • #4736: qr_updatenumpy 1.10的 bug 或不兼容性?

  • #4746: linprog返回违反平等约束的解决方案。

  • #4757: optimize.leastsq文档字符串不匹配。

  • #4774: 更新 v0.16 的贡献者列表。

  • #4779: circmean 等未出现在文档中

  • #4788: 复数时,scipy 稀疏 linalg isolve iterative.py 存在问题

  • #4791: BUG:scipy.spatial:增量 Voronoi 不增加大小...

0.16.0 的拉取请求

  • #3116: 稀疏:DIA 格式的增强

  • #3157: 增强:线性代数:添加解决环形矩阵的函数 'solve_circulant'

  • #3442: 增强:信号:添加 Gustafsson 方法作为 filtfilt 的选项...

  • #3679: WIP:修复间歇性的 slepian 失败

  • #3680: 统计模块中的一些清理

  • #3717: 增强:添加二阶段分段滤波

  • #3741: Dltisys 更改

  • #3956: 在 scipy.signal.resample 中添加关于质数样本数的注释

  • #3980: 添加 check_finite 标志到 UnivariateSpline

  • #3996: 维护:更严格的线性代数参数检查

  • #4001: 修复:狄利克雷分布的数值精度

  • #4012: 增强:线性代数:添加计算 Pascal... 的逆函数

  • #4021: 增强:lapack 和 blas 的 Cython api

  • #4089: 修复各种 PEP8 问题。

  • #4116: 维护:fitpack:修剪编译器警告(未使用标签、变量)

  • #4129: 增强:统计:向分布添加 random_state 属性

  • #4135: 增强:添加 Wishart 和逆 Wishart 分布

  • #4195: 改进插值文档

  • #4200: 增强:从描述统计函数添加 t-检验。

  • #4202: 树状图阈值颜色

  • #4205: 修复一些 Bento 构建警告。

  • #4211: 添加反 Box-Cox 转换的 ufunc

  • #4212: MRG: 修复 gh-4208

  • #4213: 增强:如果 Matlab 文件为空,添加特定警告

  • #4215: 问题 #4209:更新 splprep 文档以反映维度...

  • #4219: 文档:在构建文档时消除几个 Sphinx 警告

  • #4223: 维护:删除两行多余代码

  • #4226: 尝试通过放宽步幅来强制 numpy 重建

  • #4228: BLD:对 Bento 配置文件和文档进行了一些更新。关闭 gh-3978。

  • #4232: 文档中的错误引用

  • #4242: DOC:更改示例样本间距

  • #4245: Arff 修复

  • #4246: MAINT:C 修复

  • #4247: MAINT:移除一些未使用的代码

  • #4249: 添加更新 QR 分解的例程

  • #4250: MAINT:linalg 和稀疏中的一些 pyflakes 驱动的清理

  • #4252: MAINT:修剪超过 10 kLOC 的生成 C 代码

  • #4253: TST:停止遮蔽 ellip*测试与 boost 数据的对比

  • #4254: MAINT:special:使用 NPY_PI,而不是 M_PI

  • #4255: DOC:INSTALL:使用 Py3 兼容的打印语法,并且不提及……

  • #4256: ENH:spatial:使用 np.dot 重新实现 cdist_cosine

  • #4258: BUG:io.arff #4429 #2088

  • #4261: MAINT:signal:PEP8 和相关的样式清理。

  • #4262: BUG:newton_krylov()忽略了 norm_tol 参数,关闭#4259

  • #4263: MAINT:清理测试噪音并优化文档字符串的测试……

  • #4266: MAINT:io:在尝试读取时给出信息丰富的错误提示……

  • #4268: MAINT:fftpack 基准整数除法与真除法对比

  • #4269: MAINT:避免遮蔽 eigvals 函数

  • #4272: BUG:稀疏:修复 bench_sparse.py

  • #4276: DOC:删除与编写有关的文档中令人困惑的部分……

  • #4281: 稀疏矩阵乘法:仅在需要时转换数组(与……

  • #4284: BUG:integrate:当集成时间为……时,odeint 崩溃

  • #4286: MRG:修复逻辑数组的 matlab 输出类型

  • #4287: DEP:弃用 stats.pdf_fromgamma。关闭 gh-699。

  • #4291: DOC:linalg:修正 cholesky_banded 文档字符串中的布局

  • #4292: BUG:允许空字典作为空结构的代理

  • #4293: MAINT:!= -> not_equal 在汉明距离实现中

  • #4295: 极点配置

  • #4296: 维护:对多个模块的测试进行清理

  • #4302: 增强:解决 toeplitz 线性系统

  • #4306: 添加共轭梯度解算器的基准测试。

  • #4307: 构建:PEP 440

  • #4310: 错误修复:使 stats.geom.logpmf(1,1)返回 0.0 而不是 nan

  • #4311: 测试:恢复使用 slogdet 的测试,因为我们已经放弃...

  • #4313: 为 stats.wishart 增加一些小修复。

  • #4315: 维护:删除稀疏矩阵测试中的 numpy 1.5 兼容代码

  • #4318: 增强:向多变量分布添加 random_state

  • #4319: 维护:修复用于稀有数组的汉明距离回归问题,以及…

  • #4320: 测试:一些变更,例如 self.assertTrue(x == y, message) -> assert_equal(x,...

  • #4321: 测试:更多变更,例如 self.assertTrue(x == y, message) -> assert_equal(x,...

  • #4322: 测试:在 test_signaltools 中,变更如 self.assertTrue(x == y,...

  • #4323: 维护:清理基准测试,使它们可以作为单个文件运行。

  • #4324: 添加更详细的提交者指南,更新 MAINTAINERS.txt

  • #4326: 测试:在 test_hierarchy.py 中使用 numpy.testing

  • #4329: 维护:stats 模块重命名 check_random_state 测试函数

  • #4330: 更新距离测试

  • #4333: 维护:从 scipy.special 导入 comb 和 factorial,而不是 scipy.misc

  • #4338: 测试:从 nose 转换为 numpy.testing 的更多转换

  • #4339: 维护:从 special_matrices.py 中删除已弃用的 all_mat 函数

  • #4340: 向冻结分布添加多个特性

  • #4344: 错误修复:修复/测试 qr 中无效的 lwork 参数

  • #4345: 修复:修复 Python 3.x 下可见的测试噪音

  • #4347: 移除已弃用的 blas/lapack 导入,将 lib 重命名为 _lib

  • #4349: 文档:为 stats.binned_statistic 添加一个非平凡的例子。

  • #4350: 维护:移除 0.16.0 版本中的 optimize.anneal(在 0.14.0 版本中已弃用)。

  • #4351: 维护:修复在 optimize 中使用过时的 Numpy C API…

  • #4352: MAINT: 修复若干特殊测试失败。

  • #4353: 实现 betaprime 分布的累积分布函数。

  • #4357: BUG: 修复分段多项式的反导数计算问题。

  • #4358: BUG: 在 odeint 中修复对带状雅可比矩阵的处理,以及…

  • #4359: MAINT: 移除对 Python 版本 < 2.5 的代码路径。

  • #4360: MAINT: stats.mstats: 移除一些未使用的变量(感谢 pyflakes)。

  • #4362: 移除错误引用的平滑参数 #4072。

  • #4363: MAINT: interpolate: 清理 fitpack.py 中的代码。

  • #4364: MAINT: lib: 不从 decorator 导出 “partial”。

  • #4365: svdvals 现在返回长度为 0 的奇异值序列。

  • #4367: DOC: 稍微改善 wishart/invwishart 文档的 TeX 渲染。

  • #4373: ENH: 为 solve_banded 和 solveh_banded 添加 gtsv 和 ptsv 封装。

  • #4374: ENH: 对 spatial.cKDTree 进行增强。

  • #4376: BF: 修复读取非标准 Matlab 逻辑稀疏矩阵的问题。

  • #4377: MAINT: integrate: 清理一些 Fortran 测试代码。

  • #4378: MAINT: 修复 signal 中使用的已弃用 Numpy C API。

  • #4380: MAINT: scipy.optimize,进一步移除模拟退火相关内容。

  • #4381: ENH: 使 DCT 和 DST 接受 int 和复数类型,类似于 fft。

  • #4392: ENH: optimize: 添加 DF-SANE 非线性无导数求解器。

  • #4394: 使重新排序算法在 64 位环境下正常运行。

  • #4396: BUG: 在 Accelerate ABI 包装器中捆绑 cblas.h 以便进行编译…

  • #4398: FIX: 修复 pdist 中 wminkowski 函数的错误,其中 w.dtype != double。

  • #4402: BUG: 修复 stat.hypergeom 的参数检查。

  • #4404: MAINT: 在 C 循环中填充完整的对称 squareform。

  • #4405: BUG: 避免 X += X.T 的操作(参见 #4401)。

  • #4407: 提高小 x 下 gompertz 分布的精度。

  • #4414: DOC: 修复 scipy.signal.cwt 文档中的错误。

  • #4415: ENH: 提高 lomax 分布在小 x 下的精度。

  • #4416: DOC: 在 SuperLU.solve… 的 docstring 中更正一个参数名…

  • #4419: 在主分支中还原 scipy.linalg.calc_lwork

  • #4420: 修复稀疏求解器的性能问题

  • #4423: ENH: 提高大 x 的 rayleigh 精度。

  • #4424: BUG: optimize.minimize:修复整数 x0 输入的溢出问题。

  • #4425: ENH: 改进 truncexpon 对小 x 的精度

  • #4426: ENH: 提高大 x 的 rayleigh 精度。

  • #4427: MAINT: optimize:清理 TNC 代码

  • #4429: BLD: 修复与 numpy 1.7.x 和 1.8.x 的构建失败。

  • #4430: BUG: 修复 sparse.dok_matrix set/get 复制粘贴错误

  • #4433: 更新 _minimize.py

  • #4435: ENH: 在批量距离计算周围释放 GIL

  • #4436: 修复 spsolve 的不完整文档

  • #4439: MAINT: integrate:测试中进行一些清理。

  • #4440: 快速排列 t 检验

  • #4442: DOC: 优化:修复文档字符串中的错误结果

  • #4447: DOC: 信号:补充一些文档以配合…

  • #4448: DOC: 调整 lapack.linalg 模块的文档字符串

  • #4449: 修正 expit 文档字符串中的拼写错误

  • #4451: ENH: 使用 gcc 向量化距离循环

  • #4456: MAINT: 在 MemoryError 上不要失败大数据测试

  • #4461: CI: 使用 travis_retry 处理网络超时

  • #4462: DOC: 统一 minimize() 等函数的文档

  • #4470: MAINT: 稀疏:继承自 spmatrix 的 dok_matrix.toarray

  • #4473: BUG: signal:修复 sosfilt 中 zi 形状的验证。

  • #4475: BLD: setup.py:更新最小 numpy 版本并支持 “setup.py…

  • #4481: ENH: 添加新的线性代数特殊矩阵:Helmert 矩阵

  • #4485: MRG: 一些更改以允许读取错误的 mat 文件

  • #4490: [ENH] linalg.hessenberg:使用 orghr - 重整

  • #4491: ENH: 线性代数:为潜在有用的 LAPACK 函数添加包装器…

  • #4493: BENCH: solve_toeplitz 基准使用过时语法和…

  • #4494: MAINT: stats: 删除重复代码

  • #4496: 为 watershed_ift 算法添加了参考文献

  • #4499: DOC: 重新排列 stats 分布文档

  • #4501: 用 airspeed velocity 替换基准套件

  • #4502: SLSQP 应严格满足边界约束

  • #4503: DOC: 向前移植 0.15.x 发布说明并更新作者姓名…

  • #4504: ENH: 选项避免计算可能未使用的 svd 矩阵

  • #4505: PR 3303(稀疏矩阵范数)的重基

  • #4507: MAINT: 修复 lobpcg 性能退化

  • #4509: DOC: sparse: 替换失效链接

  • #4511: 修复差分进化 bug

  • #4512: 完全符合 PEP440 的 dev 版本号更改(始终…

  • #4525: 进行微小样式修正(pep8)

  • #4533: 添加指数修正高斯分布(scipy.stats.expongauss)

  • #4534: MAINT: benchmarks: 使基准套件在所有 scipy 上可导入…

  • #4535: BUG: 将 zip() 更改为 list(zip()) 以便在 Python 中正常工作…

  • #4536: 追踪 pr 4348(指数窗口)的后续

  • #4540: ENH: 空间: 添加 Procrustes 分析

  • #4541: 修复基准问题

  • #4542: TST: NumpyVersion dev -> dev0

  • #4543: BUG: savgol_coeffs 中的溢出

  • #4544: 对 stats 进行 pep8 修正

  • #4546: MAINT: 在一范数估计中使用减少轴参数

  • #4549: ENH: 在 scipy.signal 中添加了 group_delay

  • #4553: ENH: 显著加快时刻函数

  • #4556: DOC: 文档了 sparse.linalg.svds 的更改(可选…

  • #4559: DOC: stats: 描述文档字符串中的 loc 和 scale 参数…

  • #4563: ENH: 重写 stats.ppcc_plot

  • #4564: 更宽容(或更不宽容)地接受用户传递的 +-inf 而不是…

  • #4566: 弃用:从 scipy.stats 中删除一些已弃用的函数,…

  • #4570: 维护:在 scipy.optimize 测试中抑制 LineSearchWarning

  • #4572: 增强:从 L-BFGS-B 中提取逆 Hessian 信息

  • #4576: 增强:将 signal.lti 拆分为子类,属于#2912 的一部分

  • #4578: 维护:调和 docstrings 和函数签名

  • #4581: 在 Linux 上修复与 Intel MKL 的构建

  • #4583: 文档:optimize:删除对未使用的 disp kwarg 的引用

  • #4584: 增强:scipy.signal - Tukey 窗口

  • #4587: Hermite 渐近

  • #4593: 文档 - 向 RegularGridInterpolator 添加示例

  • #4595: 文档:修正 tutorial/optimize 中错误的 latex 字符。

  • #4600: 在 optimize.tnc 文档中添加返回码

  • #4603: 增强:为矩阵范数包装 LAPACK 的*lange函数

  • #4604: scipy.stats:广义正态分布

  • #4609: 维护:插值:修复几处 docstrings 之间的不一致性…

  • #4610: 维护:使 runtest.py –bench-compare 使用 asv 连续和…

  • #4611: 文档:stats:解释 rice scaling;在 tutorial 中添加一个注释…

  • #4614: 修复 bug:lfilter,未正确检查 zi 的大小对于 nd…

  • #4617: 维护:整合:清理 odeint 背后的 C 代码。

  • #4618: 修复:当窗口长度!=数据长度时引发错误

  • #4619: 问题#4550:scipy.stats.mode - 空…

  • #4620: 修复问题(#4590),svds 接受错误的特征值…

  • #4621: 加快 special.ai_zeros/bi_zeros 的速度 10 倍

  • #4623: 维护:对 spatial.procrustes 进行一些调整(私有文件,html…

  • #4628: 加快 signal.lfilter 的速度,并为 FIR 滤波器添加卷积路径

  • #4629: Bug:修复 integrate.nquad 中的问题;解决问题#4599

  • #4631: 维护:整合:删除 Fortran 测试函数中未使用的变量。

  • #4633: 维护:修复 remez 的收敛消息

  • #4635: PEP8:缩进(以便 pep8 机器人不会抱怨)

  • #4637: 维护:泛化符号函数以正确处理复数…

  • #4639: 修正 apple_sgemv_fix.c 中的拼写错误

  • #4642: 维护:使用 lapack 代替 scipy.linalg.norm

  • #4643: RBF 默认 epsilon 过大 2020

  • #4646: 在 invres 和 invresz 中 poly 周围添加 atleast_1d

  • #4647: 修复文档 PDF 构建

  • #4648: BUG:修复 #4408:minimize() 中的向量值约束…

  • #4649: Vonmisesfix

  • #4650: 信号示例清理在 Tukey 和 place_poles 中

  • #4652: 文档:修复 convolve 中的同模式错误

  • #4653: 提高 erf 性能

  • #4655: DEP:弃用 scipy.stats.histogram2d,推荐使用 np.histogram2d

  • #4656: DEP:弃用 scipy.stats.signaltonoise

  • #4660: 避免对稀疏压缩 [:, seq] 和 [seq, :] 的额外复制…

  • #4661: 清理、rebase #4478,添加 ?gelsy 和 ?gelsd 包装器

  • #4662: 维护:修正 odeint 消息

  • #4664: 更新 _monotone.py

  • #4672: 修复 scipy.linalg.block_diag 对空输入的行为

  • #4675: 修复 lsim

  • #4676: 在文档字符串中的 :math: 指令中添加遗漏的冒号。

  • #4679: 增强:稀疏 randn

  • #4682: 增强:scipy.signal - 添加 CSD、coherence;增强…

  • #4684: BUG:orthogonal.py 中权重计算的各种错误

  • #4685: BUG:修复 #4594:optimize.linprog 在回调时的 IndexError…

  • #4686: 维护:cluster:清理重复的异常抛出代码。

  • #4688: 改进 is_distance_dm 异常消息

  • #4692: 维护:简化 tukeylambda._ppf 中的计算

  • #4693: 增强:添加对 stats._chk_asarray 中标量的处理功能

  • #4694: 向量化 Anderson-Darling 计算。

  • #4696: 修复 lfilter 中的单例展开。

  • #4698: MAINT: 安静地处理 cephes 中的警告。

  • #4701: 添加 Bpoly.antiderivatives / integrals

  • #4703: 添加已发表论文的引用

  • #4706: MAINT: special: 避免在 specfun 中越界访问

  • #4707: MAINT: 修复涉及 np.matrix 作为函数输入的问题…

  • #4709: ENH: scipy.stats 现在返回命名元组。

  • #4710: scipy.io.idl: 使读取器对缺失变量更加健壮…

  • #4711: 修复未知文件末尾块的崩溃

  • #4712: 减少 onenormest 内存使用量

  • #4713: MAINT: interpolate: 如果可能,无需传递 dtype…

  • #4714: BENCH: 为 stats 模块添加基准测试

  • #4715: MAINT: 磨光 signal.place_poles 和 signal/test_ltisys.py

  • #4716: DEP: 废弃 mstats.signaltonoise …

  • #4717: MAINT: basinhopping: 修复测试中的错误,消除 /0 警告,…

  • #4718: ENH: stats: 可以通过名称指定要在拟合中修复的 f-shapes

  • #4721: 文档说明 imresize 将输入转换为 PIL 图像

  • #4722: MAINT: PyArray_BASE 不是 lvalue,除非使用了已弃用的 API…

  • #4725: 修复 gengamma _nump 失败

  • #4728: DOC: 将 poch 添加到 scipy 特殊函数描述列表中

  • #4735: MAINT: stats: 避免 skew 中(虚假的)除零

  • #4738: TST: 消除在 stats 中一些边界情况的运行时警告

  • #4739: BLD: 尝试构建 numpy 而不是使用 TravisCI 上的那个

  • #4740: DOC: 更新某些文档字符串,带有‘versionadded’。

  • #4742: BLD: 确保在… 上放宽步幅检查生效

  • #4750: DOC: special: TeX 对 rel_entr、kl_div 和 pseudo_huber 的排版

  • #4751: BENCH: 添加稀疏空 null 切片基准测试

  • #4753: BUG: 与最新的 Cython 版本编译修复

  • #4756: BUG: 修复 #4733:optimize.brute 完成选项与…

  • #4758: DOC:optimize.leastsq 默认 maxfev 澄清

  • #4759: 改进的 stats mle fit

  • #4760: MAINT:更仔细地计算 bfgs 更新

  • #4762: BUGS:修复 #4746 和 #4594:linprog 返回违反解决方案的问题

  • #4763: 修复 linprog 中的小 bug

  • #4766: BENCH:添加 signal.lsim 基准测试

  • #4768: 修复文档字符串示例中的 Python 语法错误

  • #4769: 修复 #4726:test_cobyla.test_vector_constraints

  • #4770: 将 FITPACK 函数标记为线程安全。

  • #4771: 编辑 scipy/stats/stats.py 以修复 fisher_exact 的 doctest

  • #4773: DOC:更新 0.16.0 发布说明。

  • #4775: DOC:linalg:添加 funm_psd 作为文档字符串示例

  • #4778: 使用字典表示函数名称的同义词

  • #4780: 在文档中包括显然被遗忘的函数

  • #4783: 将许多缺失的特殊函数添加到文档中

  • #4784: 在 PPoly 和相关函数中添加 axis 属性

  • #4785: 关于 Lena 图像来源的简短说明

  • #4786: DOC:重新格式化 KDE 文档字符串的方法部分

  • #4787: 添加 rice cdf 和 ppf。

  • #4792: CI:为检测试图掩盖的测试失败添加一个权宜之计…

  • #4795: 使 refguide_check 对误报更加智能化

  • #4797: BUG/TST:增量 Voronoi 的 numpoints 未更新

  • #4799: BUG:空间:修复 Mahalanobis 度量的几个边缘情况…

  • #4801: BUG:当 disp=True 时修复 scipy.optimize._trust-region.py 中的 TypeError。

  • #4803: QR 更新例程中宽松步幅的问题

  • #4806: MAINT:为 cauchy fit 使用明智的初始猜测

  • #4810: PEP8 化 codata.py

  • #4812: BUG:decomp_update.pyx.in 中的宽松步幅清理

  • #4820: BLD:更新 Bento 构建以修复 sgemv 和安装 cython blas/lapack…

  • #4823: ENH:scipy.signal - 添加 spectrogram 函数

  • #4827: DOC: 在 init.py 中添加 csd 和 coherence

  • #4833: BLD: 修复在 g77 构建中 linalg *lange 包装器的问题

  • #4841: TST: 由于 mingw32 中 scipy.special 中的测试失败修复测试失败...

  • #4842: DOC: 更新 site.cfg.example。大部分来自 NumPy

  • #4845: BUG: signal: 使 spectrogram 的返回值顺序匹配...

  • #4849: DOC: 修复 ode 文档字符串示例中的错误

  • #4856: BUG: 修复导致内存泄漏的拼写错误

SciPy 0.15.1 发布说明

原文:docs.scipy.org/doc/scipy-1.12.0/release/0.15.1-notes.html

SciPy 0.15.1 是一个纯粹的 Bug 修复版本,与 0.15.0 相比没有新功能。

修复的问题

  • #4413: BUG: 测试太严格,f2py 不必覆盖此数组

  • #4417: BLD: 避免使用 NPY_API_VERSION 检查不使用已弃用的…

  • #4418: 恢复并弃用 scipy.linalg.calc_work

SciPy 0.15.0 发布说明

原文:docs.scipy.org/doc/scipy-1.12.0/release/0.15.0-notes.html

目录

  • SciPy 0.15.0 发布说明

    • 新功能

      • 线性规划接口

      • 全局优化器差分进化

      • scipy.signal 改进

      • scipy.integrate improvements

      • scipy.linalg improvements

      • scipy.sparse 改进

      • scipy.special 改进

      • scipy.sparse.csgraph 改进

      • scipy.stats 改进

    • 已废弃功能

    • 不兼容变更

      • scipy.ndimage

      • scipy.integrate

    • 作者

      • 已关闭的问题

      • 拉取请求

SciPy 0.15.0 是六个月辛勤工作的结晶。它包含了几个新功能,大量的错误修复,改进的测试覆盖率和更好的文档。在这个版本中还有一些废弃和 API 变更,下面有详细记录。建议所有用户升级到此版本,因为有大量的错误修复和优化。此外,我们的开发重点现在将转移到 0.16.x 分支的错误修复版本,并在主分支上添加新功能。

本版本要求 Python 2.6、2.7 或 3.2-3.4 和 NumPy 1.5.1 或更高版本。

新功能

线性规划接口

新函数scipy.optimize.linprog提供了一种类似于scipy.optimize.minimize的通用线性规划接口。目前只支持simplex方法,这提供了一种基于两阶段、密集矩阵的单纯形算法。支持回调函数,允许用户监控算法的进展。

全局优化器差分进化

optimize模块中新增了scipy.optimize.differential_evolution函数。差分进化是一种用于寻找多变量函数全局最小值的算法。它具有随机性质(不使用梯度方法),可以搜索大量的候选空间,但通常需要比传统的基于梯度的技术更多的函数评估。

scipy.signal 的改进

添加了一个计算最大长度序列(MLS)信号的函数 scipy.signal.max_len_seq

scipy.integrate 的改进

现在可以使用 scipy.integrate 程序集成多变量 ctypes 函数,从而避免回调到 Python 并提供更好的性能。

scipy.linalg 的改进

用于解决 Procrustes 线性代数问题的函数 scipy.linalg.orthogonal_procrustes 已添加。

BLAS 第 2 级函数 her, syr, her2syr2 现在包装在 scipy.linalg 中。

scipy.sparse 的改进

scipy.sparse.linalg.svds 现在可以接受 LinearOperator 作为其主要输入。

scipy.special 的改进

现在可以使用 ellip_harm, ellip_harm_2ellip_normal 计算椭球谐函数及其相关归一化常数的值。

新增便捷函数 entr, rel_entr, kl_div, huberpseudo_huber

scipy.sparse.csgraph 的改进

reverse_cuthill_mckeemaximum_bipartite_matching 函数用于计算稀疏图的重新排序功能已添加。

scipy.stats 的改进

添加了狄利克雷多变量分布,scipy.stats.dirichlet

新函数 scipy.stats.median_test 计算 Mood 中位数检验。

新函数 scipy.stats.combine_pvalues 实现了 Fisher 和 Stouffer 方法来合并 p 值。

scipy.stats.describe 现在返回一个命名元组而不是一个元组,允许用户通过索引或名称访问结果。

弃用功能

scipy.weave 模块已弃用。它是唯一未迁移到 Python 3.x 的模块,不建议用于新代码 - 建议使用 Cython 替代。为了支持现有代码,scipy.weave 已被单独打包:github.com/scipy/weave。这是一个纯 Python 包,可以通过 pip install weave 轻松安装。

scipy.special.bessel_diff_formula 已弃用。这是一个私有函数,因此将在后续版本中从公共 API 中移除。

scipy.stats.nanmean, nanmediannanstd 函数已弃用,建议使用它们的 numpy 等价函数。

Backwards incompatible changes

scipy.ndimage

The functions scipy.ndimage.minimum_positions, *scipy.ndimage.maximum_positions* and scipy.ndimage.extrema` return positions as ints instead of floats.

scipy.integrate

The format of banded Jacobians in scipy.integrate.ode solvers is changed. Note that the previous documentation of this feature was erroneous.

Authors

  • Abject +

  • Ankit Agrawal +

  • Sylvain Bellemare +

  • Matthew Brett

  • Christian Brodbeck

  • Christian Brueffer

  • Lars Buitinck

  • Evgeni Burovski

  • Pierre de Buyl +

  • Greg Caporaso +

  • CJ Carey

  • Jacob Carey +

  • Thomas A Caswell

  • Helder Cesar +

  • Björn Dahlgren +

  • Kevin Davies +

  • Yotam Doron +

  • Marcos Duarte +

  • endolith

  • Jesse Engel +

  • Rob Falck +

  • Corey Farwell +

  • Jaime Fernandez del Rio +

  • Clark Fitzgerald +

  • Tom Flannaghan +

  • Chad Fulton +

  • Jochen Garcke +

  • François Garillot +

  • André Gaul

  • Christoph Gohlke

  • Ralf Gommers

  • Alex Griffing

  • Blake Griffith

  • Olivier Grisel

  • Charles Harris

  • Trent Hauck +

  • Ian Henriksen +

  • Jinhyok Heo +

  • Matt Hickford +

  • Andreas Hilboll

  • Danilo Horta +

  • David Menéndez Hurtado +

  • Gert-Ludwig Ingold

  • Thouis (Ray) Jones

  • Chris Kerr +

  • Carl Kleffner +

  • Andreas Kloeckner

  • Thomas Kluyver +

  • Adrian Kretz +

  • Johannes Kulick +

  • Eric Larson

  • Brianna Laugher +

  • Denis Laxalde

  • Antony Lee +

  • Gregory R. Lee +

  • Brandon Liu

  • Alex Loew +

  • Loïc Estève +

  • Jaakko Luttinen +

  • Benny Malengier

  • Tobias Megies +

  • Sturla Molden

  • Eric Moore

  • Brett R. Murphy +

  • Paul Nation +

  • Andrew Nelson

  • Brian Newsom +

  • Joel Nothman

  • Sergio Oller +

  • Janani Padmanabhan +

  • Tiago M.D. Pereira +

  • Nicolas Del Piano +

  • Manuel Reinhardt +

  • Thomas Robitaille

  • Mike Romberg +

  • Alex Rothberg +

  • Sebastian Pölsterl +

  • Maximilian Singh +

  • Brigitta Sipocz +

  • Alex Stewart +

  • Julian Taylor

  • Collin Tokheim +

  • James Tomlinson +

  • Benjamin Trendelkamp-Schroer +

  • Richard Tsai

  • Alexey Umnov +

  • Jacob Vanderplas

  • Joris Vankerschaver

  • Bastian Venthur +

  • Pauli Virtanen

  • Stefan van der Walt

  • Yuxiang Wang +

  • James T. Webber

  • Warren Weckesser

  • Axl West +

  • Nathan Woods

  • Benda Xu +

  • Víctor Zabalza +

  • Tiziano Zito +

A total of 99 people contributed to this release. People with a “+” by their names contributed a patch for the first time. This list of names is automatically generated, and may not be fully complete.

Issues closed

  • #1431: ellipk(x) extending its domain for x<0 (Trac #904)

  • #1727: consistency of std interface (Trac #1200)

  • #1851: Shape parameter negated in genextreme (relative to R, MATLAB,…

  • #1889: interp2d is weird (Trac #1364)

  • #2188: splev gives wrong values or crashes outside of support when der…

  • #2343: scipy.insterpolate 的 splrep 函数在某些组合中失败

  • #2669: .signal.ltisys.ss2tf 只应用于当前的 MISO 系统…

  • #2911: 在 Fedora 上,interpolate.splder() 失败

  • #3171: weave 在 scipy 中的未来

  • #3176: 建议改进 scipy.integrate.odeint 中的错误消息

  • #3198: scipy.stats.gaussian_kde 的 pdf() 和 logpdf() 方法

  • #3318: Travis CI 在 test("full") 上断裂

  • #3329: scipy.stats.scoreatpercentile 的不兼容变更…

  • #3362: scipy.sparse.linalg.eigs 中的引用循环,使用 shift-invert…

  • #3364: BUG:linalg.hessenberg 错误(错误的结果)

  • #3376: stats f_oneway 需要使用浮点数

  • #3379: 通过 zc.buildout 安装 scipy 0.13.3 失败

  • #3403: hierarchy.linkage 对压缩的 2x2 数据引发异常

  • #3422: optimize.curve_fit() 处理 NaN 时返回所有参数…

  • #3457: linalg.fractional_matrix_power 没有文档字符串

  • #3469: DOC:ndimage.find_object 忽略零值

  • #3491: optimize.leastsq() 文档应说明它不适用…

  • #3499: cluster.vq.whiten 对观察中的所有零列返回 NaN

  • #3503: 在 numpy 数组时,minimize 尝试进行向量加法…

  • #3508: exponweib.logpdf 对有效参数失败

  • #3509: libatlas3-base-dev 不存在

  • #3550: BUG:special.ellipkinc 计算出异常值

  • #3555: scipy.ndimage 的位置是浮点数而不是整数

  • #3557: UnivariateSpline.call 应通过所有相关参数传递…

  • #3569: 没有明确的许可声明,用于从 boost 导入的测试数据?

  • #3576: mstats 测试失败(过于敏感?)

  • #3579: 在使用 MKL 和 Ubuntu 14.04 x86_64 时,scipy 0.14.x 分支出现错误

  • #3580: 稀疏矩阵的运算符重载

  • #3587: 连续统计分布中的错误字母顺序…

  • #3596: scipy.signal.fftconvolve 不再线程安全

  • #3623: BUG: signal.convolve 执行时间比必要的长

  • #3655: scipy.signal.periodogram 中从整数数据返回整数

  • #3662: 在 Numpy 1.5.1 上的 Travis 失败(无法重现?)

  • #3668: dendogram(orientation=’foo’)

  • #3669: KroghInterpolator 不能通过点

  • #3672: 在样条中插入结点

  • #3682: scipy.optimize.curve_fit 的误导性文档

  • #3699: BUG?: scipy.signal.lfilter 在初始化条件下存在小问题

  • #3700: scipy.io.loadmat 引发的异常不一致

  • #3703: RegularGridInterpolator 使用大端数据时出现 TypeError

  • #3714: eigsh 中误导性的错误消息: k 必须在 1 到 rank(A)-1 之间

  • #3720: coo_matrix.setdiag() 失败

  • #3740: Scipy.Spatial.KdTree (Query) 返回类型?

  • #3761: scipy.special.btdtri 的无效结果

  • #3784: DOC - Special Functions - 修复 Drum 示例以支持更高的模式

  • #3785: minimize() 应具有更友好的 args=

  • #3787: BUG: signal: lombscargle 中的除零

  • #3800: BUG: scipy.sparse.csgraph.shortest_path 覆盖输入矩阵

  • #3817: 计算二项分布时计算矩的警告…

  • #3821: 检查 scipy 使用 np.ma.is_masked 的 bug

  • #3829: 线性代数函数文档未提及默认…

  • #3830: scipy.linalg.eig 文档字符串中的一个错误

  • #3844: genextreme 返回的形状参数问题

  • #3858: 在安装时出现“ImportError: No module named Cython.Compiler.Main”

  • #3876: savgol_filter 未在发布说明中列出且未添加版本信息

  • #3884: scipy.stats.kendalltau 空数组错误

  • #3895: ValueError: 内部 gesdd 函数的第 12 个参数值非法…

  • #3898: skimage 测试由于 minmax filter 更改而中断

  • #3901: scipy sparse 在 numpy 主分支上出现错误

  • #3905: DOC: optimize: linprog 文档字符串有两个 “Returns” 部分

  • #3915: DOC: sphinx 警告因 stats 分布中的 **kwds 而产生…

  • #3935: 将 stats.distributions 文件拆分为教程

  • #3969: gh-3607 在 ode 求解器带状雅可比矩阵中破坏了向后兼容性

  • #4025: DOC: signal: find_peaks_cwt 的返回值未记录。

  • #4029: scipy.stats.nbinom.logpmf(0,1,1) 返回 nan。正确值为…

  • #4032: ERROR: test_imresize (test_pilutil.TestPILUtil)

  • #4038: 错误未能正确传播通过 scipy.integrate.odeint

  • #4171: orthogonal_procrustes 总是返回 scale。

  • #4176: 解离散 Lyapunov 方程与矩阵无法正常工作…

Pull requests

  • #3109: ENH: 添加 Fisher 方法和 Stouffer Z 分数方法

  • #3225: 将极值分布添加到广义 Pareto 分布中…

  • #3262: 实现更快的多变量积分后端

  • #3266: ENH: signal: 为 periodogram 添加 type=False 参数…

  • #3273: 在 Travis-CI 中添加 PEP8 检查

  • #3342: ENH: 添加线性规划的 linprog 函数

  • #3348: BUG: 在使用 interp2d 时添加适当的错误处理…

  • #3351: ENH: 添加最小二乘法(MLS)方法

  • #3382: ENH: scipy.special 信息论函数

  • #3396: ENH: 通过假设稀有情况,进一步改进 stats.nanmedian

  • #3398: 添加了两个 gaussian_kde 类的包装器

  • #3405: BUG: cluster.linkage 数组转换为双精度类型

  • #3407: MAINT: 使用 assert_warns 替代更复杂的机制

  • #3409: ENH: 在 signal/_peak_finding.py 中改用数组视图

  • #3416: Issue 3376 : stats f_oneway 需要浮点数

  • #3419: BUG:工具:修复 detect_cpu_extensions_wine.py 中 FMA 指令列表的问题。

  • #3420: DOC:stats:在 stats 包级文档中添加 'entropy'。

  • #3429: BUG:在使用后立即关闭中间文件描述符。

  • #3430: MAINT:修复一些 Cython 变量声明以避免警告。

  • #3433: 纠正 chebwin 窗口函数的归一化。

  • #3435: 添加更精确的链接到 R 的分位数文档。

  • #3446: ENH:scipy.optimize - 添加 differential_evolution。

  • #3450: MAINT:从 scipy.stats.mstats_basic 中删除未使用的函数 _kolmog1。

  • #3458: 重制 PR-3084(mstats-stats 比较)的版本。

  • #3462: MAINT:对 chebwin 的低衰减值返回警告。

  • #3463: DOC:linalg:在 matfuncs.py 的函数中添加示例。

  • #3477: ENH:sparse:在 sparsetools 例程中释放 GIL。

  • #3480: DOC:在 deconvolve 文档字符串中添加更多细节。

  • #3484: BLD:修复 MinGW-w64 下 Qhull 构建问题。关闭 gh-3237。

  • #3498: MAINT:io:从 idl.py 中删除旧警告。

  • #3504: BUG:cluster.vq.whiten 在 std==0 时返回 nan 或 inf。

  • #3510: MAINT:stats:重新实现 exponweib 的 pdf 和 logpdf 方法。

  • #3512: 在 pep8 1.5 发布后,修复 TravisCI 上出现的 PEP8 错误。

  • #3514: DOC:似乎 libatlas3-base-dev 从未存在过。

  • #3516: DOC:改进 scipy.sparse 的文档字符串。

  • #3517: ENH:加速 ndimage.filters.min(max)imum_filter1d。

  • #3518: scipy.misc.logsumexp 中的问题。

  • #3526: DOC:为 cwt 添加图形示例,并使用更有趣的信号。

  • #3527: ENH:使用 MINLIST 算法实现 min(max)imum_filter1d。

  • #3537: STY:减少 C 编译器警告数量。

  • #3540: DOC:linalg:为 fractional_matrix_power 添加文档字符串。

  • #3542: kde.py 中的文档错误。

  • #3545: BUG:stats:使用小参数的 stats.levy.cdf 丢失精度。

  • #3547: 错误修正:special:erfcinv 对小参数失去精度。

  • #3553: 文档:卷积示例

  • #3561: 修复:在 ndimage.measurements 中返回位置为 int 而不是…

  • #3564: 修复与 numpy 主分支的测试失败。关闭 gh-3554

  • #3565: 增强:使 interp2d 接受未排序数组进行插值。

  • #3566: 构建:如果无法导入,向元数据添加 numpy 要求。

  • #3567: 文档:将 matfuncs 的文档字符串移动到用户可见函数

  • #3574: 修复 mstats.theilslopes 中的多个 bug

  • #3577: 测试:减少 mstats 测试的敏感性

  • #3585: 清理 scipy.constants 中的代码

  • #3589: 错误修正:sparse:允许运算符重载

  • #3594: 错误修正:lobpcg 对小矩阵(n < 10)返回了错误的值

  • #3598: 维护:修复覆盖率和 coveralls

  • #3599: 维护:symeig – 那是我很久没有听到的名字了

  • #3602: 维护:清理新的 optimize.linprog 并增加几个测试

  • #3607: 错误修正:集成:修复一些 bugs 和文档错误…

  • #3609: 维护:integrate/odepack:消除死去的 Fortran 代码

  • #3616: 修复:无效值

  • #3617: 以 Python-3 兼容的方式对 netcdf 变量进行排序

  • #3622: 文档:为 linprog 函数添加了 0.15.0 发布说明条目。

  • #3625: 修正 cKDTree.sparse_distance_matrix 的文档

  • #3626: 维护:linalg.orth 内存效率

  • #3627: 维护:stats:一些清理工作

  • #3628: 维护:signal:从 wavelets.py 中移除一个无用的函数

  • #3632: 增强:stats:添加 Mood 中位数检验。

  • #3636: 维护:cluster:一些清理工作

  • #3638: 文档:optimize.basinhopping 的文档字符串混淆了单数和…

  • #3639: 错误修正:在 mstats.sem 中将 ddof 默认值改为 1,与…

  • #3640: Weave:弃用该模块并在 TravisCI 上禁用慢速测试

  • #3641: ENH: io.arff.arffread 中添加对日期属性的支持

  • #3644: MAINT: stats: 在 mstats_basic.py 中移除多余的别名

  • #3646: ENH: 向 COO 稀疏矩阵添加 sum_duplicates 方法

  • #3647: 修复 #3596: 使 fftconvolve 线程安全

  • #3650: BUG: sparse: 更智能的随机索引选择

  • #3652: 修正 power_divergence 文档字符串示例中的错误选项名称

  • #3654: 将 EPD 更改为 Canopy

  • #3657: BUG: signal.welch: 确保无论如何都使用浮点数 dtype…

  • #3660: TST: 将一个测试标记为已知失败

  • #3661: BLD: 忽略 pep8 的 E302 错误(期望 2 个空行,找到 1 个)

  • #3663: BUG: 修复泄漏的 errstate,并在测试中忽略 invalid= 错误

  • #3664: BUG: 当 in2.size > in1.size 时,correlate 的速度极慢

  • #3667: ENH: 在多变量正态分布的概率密度函数中添加默认参数

  • #3670: ENH: FFT 大小检查的小幅加速

  • #3671: DOC: 在 0.15 版发行说明中添加 differential_evolution 函数

  • #3673: BUG: interpolate/fitpack: 传递给 Fortran 程序的参数可能不…

  • #3674: 添加对现有 netcdf 文件追加的支持

  • #3681: 加速 test('full'),解决 Travis CI 超时问题

  • #3683: ENH: cluster: 重写并优化 vq 在 Cython 中的实现

  • #3684: 更新 special 文档

  • #3688: special 文档字符串中的空格

  • #3692: ENH: scipy.special: 改进 sph_harm 函数

  • #3693: 更新 signal 和 fftpack 的 refguide 条目

  • #3695: 更新 continuous.rst

  • #3696: ENH: 在 dendrogram() 中检查有效的 'orientation' 关键字

  • #3701: 在 filtfilt 中将 'a' 和 'b' 系数转换为至少 1 维数组

  • #3702: BUG: cluster: _vq 无法处理大尺寸特征

  • #3704: BUG: special: ellip(k,e)inc 期望的值为 nan 和 double

  • #3707: BUG: 在 RegularGridInterpolator 中正确处理 fill_value 的 dtype 检查

  • #3708: 在无法读取 mat 文件时重新引发异常。

  • #3709: BUG: 在 KroghInterpolator._evaluate 中将'x'转换为正确的 dtype

  • #3712: ENH: cluster: 在 Cython 中重新实现 K-means 的更新步骤

  • #3713: FIX: 检查 lfiltic 的类型

  • #3718: 将 INSTALL 文件扩展名更改为 rst

  • #3719: 解决 svds 返回零输入矩阵的 nans

  • #3722: MAINT: spatial: 静态、未使用的代码、sqrt(sqeuclidean)

  • #3725: ENH: 如果可用,使用 numpy 的 nanmedian

  • #3727: TST: 添加一个新的 fixed_point 测试,并更改一些测试函数...

  • #3731: BUG: 修复 scipy.integrate.quadrature 中的 romb

  • #3734: DOC: 简化带有 semilogx 的示例

  • #3735: DOC: 在 lti.impulse/step 中添加最小的文档字符串

  • #3736: BUG: 将 pchip 参数转换为浮点数

  • #3744: 对 Akima1DInterpolator 的继承方法进行存根处理

  • #3746: DOC: 修复 Raises 部分的格式

  • #3748: ENH: 添加离散 Lyapunov 变换求解

  • #3750: 启用 Python 3.4 的自动化测试

  • #3751: 反向 Cuthill-McKee 和最大二分匹配重新排序...

  • #3759: MAINT: 避免使用浮点数组进行索引

  • #3762: TST: 在 vq 测试中过滤掉 RuntimeWarning

  • #3766: TST: cluster: 在 test_hierarchy.py 中进行一些清理

  • #3767: ENH/BUG: 支持椭圆积分中的负 m

  • #3769: ENH: 避免重复的矩阵求逆

  • #3770: BUG: signal: 在 lfilter_zi 中,当...时,b 没有正确重新缩放

  • #3772: STY: 避免在 csr_matrix.getcol/row 中不必要的转置

  • #3773: ENH: 在 UnivariateSpline 调用中添加 ext 参数

  • #3774: BUG: 在 integrate/quadpack.h 中,将所有声明放在语句之前。

  • #3779: Incbet 修复

  • #3788: BUG: 修复 lombscargle 中的 ZeroDivisionError

  • #3791: 文档构建的一些维护工作

  • #3795: scipy.special.legendre 文档字符串

  • #3796: TYPO: sheroidal -> spheroidal

  • #3801: BUG: shortest_path 覆盖

  • #3803: TST: lombscargle 回归测试涉及 atan 与 atan2

  • #3809: ENH: 正交 Procrustes 求解器

  • #3811: ENH: scipy.special, 实现了椭球谐函数:…

  • #3819: BUG: 从一个没有零的 ndarray 创建完全连接的 csgraph

  • #3820: MAINT: 避免在 binom(n, p=0).mean()等中出现虚假警告

  • #3825: 不要声称 scipy.cluster 进行距离矩阵计算。

  • #3827: 获取和设置 coo_matrix 的对角线,以及相关的 csgraph 拉普拉斯…

  • #3832: DOC: 在整合/nquad 文档字符串中进行小的添加。

  • #3845: 修复#3842:scipy.optimize.line_search 中的错误

  • #3848: BUG: 边缘情况下协方差矩阵恰好为零

  • #3850: DOC: typo

  • #3851: DOC: 为一些 arpack 函数文档化默认参数值

  • #3860: DOC: sparse: 将函数'find'添加到模块级文档字符串中

  • #3861: BUG: 删除不必要的 args 作为实例变量的存储…

  • #3862: BUG: signal: 修复多输出系统在 ss2tf 中的处理。

  • #3865: Feature request: 能够在 FortranFile 中读取异构类型

  • #3866: MAINT: 更新 pip 的 wheelhouse 以供安装使用

  • #3871: MAINT: linalg: 去除 calc_lwork.f

  • #3872: MAINT: 使用 scipy.linalg 而不是 np.dual

  • #3873: BLD: 如果没有安装 Cython,显示更详细的消息。

  • #3874: TST: cluster: 清理层次结构测试数据

  • #3877: DOC: 添加 Savitzky-Golay 滤波器版本说明

  • #3878: DOC: 将 versionadded 移到 notes

  • #3879: 对文档进行了小的调整

  • #3881: FIX 修复了 fancy 赋值期间的排序错误

  • #3885: kendalltau 函数现在在使用空数组时返回 nan 元组…

  • #3886: BUG:修正 linprog 的关键字参数顺序以匹配文档

  • #3888: BUG:optimize:在 _linprog_simplex 中处理…的情况

  • #3891: BUG:stats:修复 chi2_contingency 中的 ValueError 消息。

  • #3892: 文档:sparse.linalg:修复 lobpcg 的文档字符串。

  • #3894: 文档:stats:各种文档字符串编辑。

  • #3896: 修复矩阵市场格式解析中的 2 处错误

  • #3897: BUG:第二类相关 Legendre 函数对于 1<x<1.0001

  • #3899: BUG:在 alngam 中修复未定义的行为

  • #3906: 维护/文档:在多个文档字符串中进行空白调整。

  • #3907: 测试:放宽插值测试的边界以适应四舍五入…

  • #3909: 维护:为了兼容性创建一个通用版本的 count_nonzero

  • #3910: 修复主分支中的几个测试错误

  • #3911: 在 HTML 文档中使用 MathJax

  • #3914: 重新设计 _roots 函数并进行文档化。

  • #3916: 移除所有 linpack_lite 代码,并用 LAPACK 程序替换

  • #3917: 样条,常数外推

  • #3918: 文档:微调 rv_discrete 的文档字符串示例

  • #3919: 积分速度提升:scipy.special.orthogonal.p_roots 使用缓存

  • #3920: 文档:澄清 curve_fitsigma 参数的文档字符串

  • #3922: 修复 linprog 中的文档字符串问题(修复 #3905)。

  • #3924: 必要时将参数强制转换为元组。

  • #3926: 文档:在文档字符串中用反引号括起统计类方法。

  • #3927: 修改 rombdx 参数文档。

  • #3928: 在 LSQUnivariateSpline 中检查 FITPACK 条件

  • #3929: 添加了关于使用 NaN 的 leastsq 的警告。

  • #3930: 增强:optimize:如果 pcov 无法确定,curve_fit 现在会发出警告

  • #3932: 澄清了 k > n 的情况。

  • #3933: 文档:在此处和那里删除 import scipy as sp 的缩写

  • #3936: 为从…导入的测试数据添加许可和版权持有者

  • #3938: 文档:修正了返回类型的文档。

  • #3939: 文档:fitpack:在 splrep docstring 中添加有关 Sch-W 条件的注释

  • #3940: 测试:integrate:删除 odeint 的无效测试。

  • #3942: 修复:修正 eigsh 的错误消息。

  • #3943: 增强:释放 GIL 以进行 ndimage 的过滤和插值

  • #3944: 修复:如果窗口数据类型不支持,则引发值错误

  • #3946: 修复 signal.get_window 与 Unicode 窗口名称的问题

  • #3947: 维护:在 stats.mstats 中进行一些 docstring 修复和样式清理

  • #3949: 文档:修复 stats docstrings 中的一些问题。

  • #3950: 测试:sparse:删除不会失败的已知失败

  • #3951: 测试:从 Rackspace wheelhouse 切换到 numpy/cython 源码...

  • #3952: 文档:stats:对“chi”分布的小格式修正...

  • #3953: 文档:stats:对 docstrings 进行几处修正和小的添加。

  • #3955: signal.init.py:删除重复的get_window条目

  • #3959: 测试:sparse:更多“已知失败”的 DOK 不会失败

  • #3960: BUG:io.netcdf:如果还有引用,不要关闭 mmap...

  • #3965: 文档:修复构建时发生的更多 sphinx 警告。

  • #3966: 文档:在 HACKING 中添加测试生成器使用指南

  • #3968: BUG:sparse.linalg:使 arpack 中的 Inv 对象可垃圾回收...

  • #3971: 删除所有 linpack_lite 代码,并替换为 LAPACK 例程

  • #3972: 修正错误消息中的拼写错误

  • #3973: 维护:更好的多变量正态分布错误消息。

  • #3981: 转换以信息理论函数命名的 scipy.special 函数...

  • #3984: 包装 her, syr, her2, syr2 blas 例程

  • #3990: 改进 UnivariateSpline 文档

  • #3991: 增强:stats:为 describe 输出返回命名元组

  • #3993: 文档:stats:percentileofscore 参考 np.percentile

  • #3997: BUG:linalg:pascal(35)错误:最后一个元素溢出...

  • #3998: MAINT:使用 isMaskedArray 而不是 is_masked 来检查类型

  • #3999: TST:针对所有 boost 数据文件进行测试。

  • #4000: BUG:在几个分布中修复边缘情况处理。

  • #4003: ENH:在 fitpack 中使用 Python 的警告而不是打印信息。

  • #4004: MAINT:optimize:在 zeros.c 中删除一些未使用的变量

  • #4006: BUG:修复NI_MinOrMaxFilter1D中 C90 编译器的警告

  • #4007: MAINT/DOC:在几个文件中修正‘decomposition’的拼写。

  • #4008: DOC:stats:拆分分布描述…

  • #4015: TST:logsumexp 回归测试

  • #4016: MAINT:从 logsumexp 中删除一些与 inf 相关的警告

  • #4020: DOC:stats:修正几个分布文档字符串中的空白字符

  • #4023: 赋值前需要一个空格

  • #4024: 在 dendrogram()中:更正一个参数名称和语法问题…

  • #4041: BUG:misc:确保 PIL 的'resize'的'size'参数…

  • #4049: BUG:_logpmf 的返回

  • #4051: BUG:整数矩阵的 expm

  • #4052: ENH:integrate:odeint:处理回调函数中的异常。

  • #4053: BUG:stats:重构参数验证以避免 Unicode 问题。

  • #4057: 为 scipy.sparse.linalg.svds 文档添加换行以正确…

  • #4058: MAINT:stats:在发布中添加对 scoreatpercentile 更改的说明…

  • #4059: ENH:interpolate:允许 splev 接受 n 维数组。

  • #4064: 为 scipy.signal.find_peaks_cwt 记录返回值

  • #4074: ENH:支持将 LinearOperator 作为 svds 的输入

  • #4084: BUG:在 scipy/io/matlab/streams.pyx 中匹配异常声明…

  • #4091: DOC:special:关于如何评估多项式的更清晰说明

  • #4105: BUG:在 Accelerate 中解决 SGEMV 段错误的问题

  • #4107: DOC:在示例中消除‘import *’

  • #4113: DOC:修正 distance.yule 中的拼写错误

  • #4114: 维护 C 修复

  • #4117: 弃用:nanmean、nanmedian 和 nanstd,推荐使用它们的 numpy…

  • #4126: scipy.io.idl:支持描述记录并修复与 null 的 bug…

  • #4131: 增强:在更多 ndimage 函数中释放 GIL

  • #4132: 维护:统计:修正一个拼写错误 [skip ci]

  • #4145: 文档:修复 nc chi-squared dist 的文档错误

  • #4150: 修复 _nd_image.geometric_transform 的字节序 bug

  • #4153: 维护:在 lib/lapack/ f2py 中移除已弃用的 numpy API…

  • #4156: 维护:优化:移除无用的代码

  • #4159: 维护:优化:清理 Zeros 代码

  • #4165: 文档:将缺失的特殊函数添加到 doc

  • #4172: 文档:移除误导性的 procrustes 文档字符串行

  • #4175: 文档:稀疏矩阵:澄清 CSC 和 CSR 构造器的使用方式

  • #4177: 维护:允许 np.matrix 输入到 solve_discrete_lyapunov

  • #4179: 测试:修复 special.legendre 的一个间歇性失败的测试用例

  • #4181: 维护:在释放前移除不必要的空指针检查

  • #4182: 椭球谐波

  • #4183: 跳过 Travis-CI 中的 Cython 构建

  • #4184: Pr 4074

  • #4187: Pr/3923

  • #4190: 错误修复:special:修复 ellip_harm 构建问题

  • #4193: 构建:修复 msvc 编译器错误

  • #4194: 错误修复:修复在 win-amd64 上的缓冲区 dtype 不匹配问题

  • #4199: 增强:将 scipy.stats.describe 输出从 datalen 改为 nobs

  • #4201: 文档:在发布说明中添加 blas2 和 nan* 的弃用信息

  • #4243: 测试:提升测试容忍度

SciPy 0.14.1 发布说明

原文:docs.scipy.org/doc/scipy-1.12.0/release/0.14.1-notes.html

SciPy 0.14.1 是一个纯 bug 修复版本,与 0.14.0 相比没有新功能。

问题已关闭

  • #3630: NetCDF 读取导致段错误

  • #3631: 复数矩阵中 SuperLU 对象未按预期工作

  • #3733: 从 map_coordinates 中的段错误

  • #3780: 使用 CSR/CSC 矩阵和 uint32/uint64 时出现段错误

  • #3781: BUG:sparse:修复 sparsetools typemaps 中遗漏的类型

  • #3802: 0.14.0 版本 API 变更:scipy.stats.distributions API 中缺少 _gen 生成器

  • #3805: 使用 numpy 1.10 时的 ndimage 测试失败

  • #3812: csr_matrix 上的 == 有时错误

  • #3853: 使用 numpy 1.9.0b2 时出现许多 scipy.sparse 测试错误/失败

  • #4084: 为了与 Cython 0.21.1 兼容性修复异常声明

  • #4093: BUG:fitpack:避免 splev(x, tck, der=k) 中的内存错误

  • #4104: BUG:在 Accelerate 中解决 SGEMV 的段错误(维护版本 0.14.x)

  • #4143: BUG:修复大数据下的 ndimage 函数

  • #4149: 整数数组中 expm 存在的 Bug

  • #4154: 回溯 gh-4041 至 0.14.1(确保 PIL 的 'resize' 方法的 'size' 参数是一个元组)

  • #4163: 回溯 #4142(scipy.sparse.linalg.lsqr 中的 ZeroDivisionError)

  • #4164: 回溯 gh-4153(移除 lib/lapack/ f2py 包装器中的废弃 numpy API 使用)

  • #4180: 回溯 pil resize 支持元组修复

  • #4168: 在 Windows 32 位系统上,使用 numpy 1.9.1 时出现大量 arpack 测试失败

  • #4203: 在 0.14.x 中的矩阵乘法比以前慢了超过 10 倍...

  • #4218: 尝试使 ndimage 插值与 numpy 兼容放松...

  • #4225: BUG:PPoly 形状检查中的 off-by-one 错误

  • #4248: BUG:optimize:修复 slsqp 中使用闭包的问题

SciPy 0.14.0 发行说明

原文链接:docs.scipy.org/doc/scipy-1.12.0/release/0.14.0-notes.html

内容

  • SciPy 0.14.0 发行说明

    • 新功能

      • scipy.interpolate 改进

      • scipy.linalg 改进

      • scipy.optimize 改进

      • scipy.stats 改进

      • scipy.signal 改进

      • scipy.special 改进

      • scipy.sparse 改进

    • 弃用功能

      • anneal

      • scipy.stats

      • scipy.interpolate

    • 不兼容的变更

      • scipy.special.lpmn

      • scipy.sparse.linalg

      • scipy.stats

      • scipy.interpolate

    • 其他变更

    • 作者

      • 已关闭的问题

      • 拉取请求

SciPy 0.14.0 是 8 个月辛勤工作的结晶。它包含许多新功能、大量错误修复、改进的测试覆盖率和更好的文档。本次发布中有一些弃用和 API 变更,下面有详细记录。建议所有用户升级到此版本,因为它包含大量错误修复和优化。此外,我们的开发重点现在将转移到 0.14.x 分支上的错误修复版本和主分支上添加新功能。

此版本要求 Python 2.6、2.7 或 3.2-3.4,并且需要 NumPy 1.5.1 或更高版本。

新功能

scipy.interpolate 改进

已添加一个新的包装函数 scipy.interpolate.interpn,用于在规则网格上进行插值。interpn 支持任意维度的线性和最近邻插值,以及二维样条插值。

已添加了基于幂和伯恩斯坦多项式基础的分段多项式的更快实现,作为 scipy.interpolate.PPolyscipy.interpolate.BPoly。新用户应优先使用这些,而不是 scipy.interpolate.PiecewisePolynomial

scipy.interpolate.interp1d 现在接受非单调输入并对其进行排序。如果性能至关重要,可以通过新的 assume_sorted 关键字来关闭排序。

scipy.interpolate 中添加了评估双变量样条导数的功能。

新的类 scipy.interpolate.Akima1DInterpolator 实现了 H. Akima 设计的分段三次多项式插值方案。

增加了用于在任意维度中对规则不均匀网格进行快速插值的功能,作为 scipy.interpolate.RegularGridInterpolator

scipy.linalg 改进

新的函数 scipy.linalg.dft 计算离散傅里叶变换的矩阵。

为矩阵指数的条件数估计功能增加了函数 scipy.linalg.expm_cond

scipy.optimize 改进

添加了一个可以通过 optimize.bench() 运行的优化基准集。

scipy.optimize.curve_fit 现在通过 absolute_sigma 关键字具有更可控的误差估计。

支持将自定义最小化方法传递给 optimize.minimize()optimize.minimize_scalar() ,目前特别适用于将 optimize.basinhopping() 与自定义局部优化器例程结合使用。

scipy.stats 改进

增加了一个新的类 scipy.stats.multivariate_normal ,具有多变量正态随机变量的功能。

scipy.stats 分布框架上做了大量工作。矩时计算(主要是偏度和峰度)已修复和验证,所有示例现在都可以运行,并为各个分布进行了许多小的精度和性能改进。

新的函数 scipy.stats.anderson_ksamp 计算 k 样本 Anderson-Darling 检验,检验假设 k 个样本来自同一总体。

scipy.signal 改进

scipy.signal.iirfilter 和相关函数现在在内部使用极点-零点(“zpk”)格式设计 Butterworth、Chebyshev、椭圆和 Bessel IIR 滤波器,而不是使用分子/分母格式进行变换。由此产生的滤波器的准确性,特别是高阶滤波器,显著提高。

使用新函数scipy.signal.savgol_filterscipy.signal.savgol_coeffs添加了 Savitzky-Golay 滤波器。

新函数scipy.signal.vectorstrength计算事件集的向量强度,一种相位同步度量。

scipy.special 改进

新增了计算 Box-Cox 变换的函数scipy.special.boxcoxscipy.special.boxcox1p

scipy.sparse 改进

  • CSR、CSC 和 DOK 索引速度显著提升。

  • 使用 Numpy >= 1.9(将在 MM 2014 年发布)时,将稀疏矩阵传递给np.dotnp.multiply等 ufuncs 的参数时,功能正常。对于较早的 Numpy 和 Scipy 版本,此类操作的结果未定义且通常是意外的。

  • 稀疏矩阵不再限于2³¹非零元素。包含更多元素的矩阵自动切换到使用 64 位索引数据类型。假定稀疏矩阵使用 int32 作为索引数据类型的用户代码将继续工作,除非是这种大矩阵。处理更大矩阵的代码需要接受 int32 或 int64 索引。

已弃用特性

anneal

全局最小化函数scipy.optimize.anneal已弃用。所有用户应改用函数scipy.optimize.basinhopping

scipy.stats

randwcdfrandwppf函数已弃用。所有用户应改用特定分布的rvs方法。

概率计算别名zprobfprobksprob已弃用。应改用相应分布的sf方法或直接使用special函数。

scipy.interpolate

PiecewisePolynomial类已弃用。

不兼容的后向变更

scipy.special.lpmn

lpmn不再接受复值参数。新增了具有统一复解析行为的新函数clpmn,应改用该函数。

scipy.sparse.linalg

在广义特征值问题中,特征向量被标准化为 2-范数中的单位向量,而不是遵循 LAPACK 标准化约定。

由于许可证和安装问题,已移除了scipy.sparse.linalg中的 UMFPACK 包装器。如果可用,spsolvefactorized函数在使用时仍然会透明地使用scikits.umfpack。否则,这些函数将改用 SuperLU。

scipy.stats

已从scipy.stats中移除了不推荐使用的函数glmonewaycmedian

stats.scoreatpercentile现在返回数组而不是百分位数列表。

scipy.interpolate

用于计算分段线性插值导数的 API 已更改:如果pPchipInterpolator对象,则p.derivative(der)返回表示p导数的可调用对象。对于就地导数计算,请使用call方法的第二个参数:p(0.1, der=2)x=0.1处评估p的二阶导数。

方法p.derivatives已被移除。

其他变更

作者

  • Marc Abramowitz +

  • Anders Bech Borchersen +

  • Vincent Arel-Bundock +

  • Petr Baudis +

  • Max Bolingbroke

  • François Boulogne

  • Matthew Brett

  • Lars Buitinck

  • Evgeni Burovski

  • CJ Carey +

  • Thomas A Caswell +

  • Pawel Chojnacki +

  • Phillip Cloud +

  • Stefano Costa +

  • David Cournapeau

  • David Menendez Hurtado +

  • Matthieu Dartiailh +

  • Christoph Deil +

  • Jörg Dietrich +

  • endolith

  • Francisco de la Peña +

  • Ben FrantzDale +

  • Jim Garrison +

  • André Gaul

  • Christoph Gohlke

  • Ralf Gommers

  • Robert David Grant

  • Alex Griffing

  • Blake Griffith

  • Yaroslav Halchenko

  • Andreas Hilboll

  • Kat Huang

  • Gert-Ludwig Ingold

  • James T. Webber +

  • Dorota Jarecka +

  • Todd Jennings +

  • Thouis(Ray)Jones

  • Juan Luis Cano Rodríguez

  • ktritz +

  • Jacques Kvam +

  • Eric Larson +

  • Justin Lavoie +

  • Denis Laxalde

  • Jussi Leinonen +

  • lemonlaug +

  • Tim Leslie

  • Alain Leufroy +

  • George Lewis +

  • Max Linke +

  • Brandon Liu +

  • Benny Malengier +

  • Matthias Kümmerer +

  • Cimarron Mittelsteadt +

  • Eric Moore

  • Andrew Nelson +

  • Niklas Hambüchen +

  • Joel Nothman +

  • Clemens Novak

  • Emanuele Olivetti +

  • Stefan Otte +

  • peb +

  • Josef Perktold

  • pjwerneck

  • poolio

  • Jérôme Roy +

  • Carl Sandrock +

  • Andrew Sczesnak +

  • Shauna +

  • Fabrice Silva

  • Daniel B. Smith

  • Patrick Snape +

  • Thomas Spura +

  • Jacob Stevenson

  • Julian Taylor

  • Tomas Tomecek

  • Richard Tsai

  • Jacob Vanderplas

  • Joris Vankerschaver +

  • Pauli Virtanen

  • Warren Weckesser

一共有 80 位贡献者参与了这次发布。名单中标有“+”符号的人是首次贡献补丁的。此名单是自动生成的,可能并非完全完整。

关闭的问题

  • #1325: 在 scipy.cluster.hierarchy 的 dendrogram 函数中添加自定义 axis 关键字…

  • #1437: 负整数的 Pochhammer 符号错误(Trac #910)

  • #1555: scipy.io.netcdf 泄漏文件描述符(Trac #1028)

  • #1569: 使用 numpy.multiply()进行元素乘法时,稀疏矩阵失败…

  • #1833: 稀疏矩阵限制在 2³² 非零元素(Trac #1307)

  • #1834: scipy.linalg.eig 如果给定 B,则不会规范化特征向量…

  • #1866: invgamma 的统计信息(Trac #1340)

  • #1886: stats.zipf 浮点警告(Trac #1361)

  • #1887: Stats 连续分布 - 浮点警告(Trac…

  • #1897: scoreatpercentile() 不处理空列表输入(Trac #1372)

  • #1918: splint 返回不正确的结果(Trac #1393)

  • #1949: mstats 中的 kurtosistest 因类型错误失败(Trac #1424)

  • #2092: scipy.test 留下 darwin27compiled_catalog、cpp 和 so 文件…

  • #2106: stats ENH:分布文档字符串中的形状参数(Trac…

  • #2123: 二元 ufunc 中稀疏矩阵的不良行为(Trac #1598)

  • #2152: 修复 Python 3 上 gzip 的 mmio/fromfile(Trac #1627)

  • #2164: stats.rice.pdf(x, 0) 返回 nan(Trac #1639)

  • #2169: scipy.optimize.fmin_bfgs 未处理带边界的函数…

  • #2177: scipy.cluster.hierarchy.ClusterNode.pre_order 返回 IndexError…

  • #2179: coo.todense() 导致段错误(Trac #1654)

  • #2185: scipy.ndimage.gaussian_filter*() 的精度受限(Trac #1660)

  • #2186: scipy.stats.mstats.kurtosistest 在 1d 输入上崩溃(Trac #1661)

  • #2238: hypergeom.cdf 上的负 p 值(Trac #1719)

  • #2283: 插值例程中的升序问题(Trac #1764)

  • #2288: mstats.kurtosistest 错误地转换为 float,并失败…

  • #2396: lpmn 对 |z| > 1 的错误结果(Trac #1877)

  • #2398: ss2tf 返回 num 作为 2D 数组而非 1D(Trac #1879)

  • #2406: linkage 不接受 Unicode 字符串作为方法名(Trac #1887)

  • #2443: IIR 滤波器设计不应在内部转换为 tf 表示

  • #2572: splu 的类方法 solve 返回损坏或错误的对象…

  • #2667: stats 陷入无限循环?

  • #2671: .stats.hypergeom 文档中关于 pmf 的注释错误

  • #2691: BUG scipy.linalg.lapack:potrf/ptroi 解释它们的 'lower'...

  • #2721: 允许在 scipy.sparse 切片中使用省略号

  • #2741: stats:废弃并移除特殊函数的别名

  • #2742: stats 添加 rvs 到 rice 分布

  • #2765: stats 熵中的错误

  • #2832: argrelextrema 在未找到峰值时返回两个空数组元组...

  • #2861: scipy.stats.scoreatpercentile 对向量 per 损坏

  • #2891: COBYLA 在违反约束条件时成功终止

  • #2919: 当前主分支的测试失败

  • #2922: ndimage.percentile_filter 对多维...

  • #2938: Sparse/dense 矩阵原地操作由于 numpy_ufunc 失败

  • #2944: MacPorts 构建产生 40Mb 的构建警告

  • #2945: FAIL:test_basic.TestDet 中的 test_random_complex

  • #2947: FAIL:对 savgol_filter() 的一些微不足道的边界案例进行测试失败

  • #2953: Scipy Delaunay 三角剖分未定向

  • #2971: scipy.stats.mstats.winsorize 文档错误

  • #2980: 运行看似完全有效的示例出现问题

  • #2996: rv_discrete 的 entropy 是不正确的?!

  • #2998: 修复 numpy 版本比较问题

  • #3002: python setup.py install 失败

  • #3014: stats.fisher_exact 存在错误

  • #3030: scipy.stats.distribution.entropy 使用相对熵时...

  • #3037: scipy.optimize.curve_fit 输入时导致意外行为...

  • #3047: mstats.ttest_rel 中 axis=None,需要掩码数组

  • #3059: BUG:稀疏矩阵切片返回错误的 dtype

  • #3063: binned_statistics 中 range 关键字不正确

  • #3067: cumtrapz 不按预期工作

  • #3069: sinc

  • #3086: 'stats' 和 'mstats' 之间标准误差计算不一致

  • #3094: 在 scipy.misc 中添加 perm 函数,并增强…

  • #3111: scipy.sparse.[hv]stack 不再遵守 dtype 参数

  • #3172: optimize.curve_fit 使用与 optimize.leastsq 不同的命名法

  • #3196: scipy.stats.mstats.gmean 实际上不接受 dtype

  • #3212: csr_matrix 的点积导致分段错误

  • #3227: 当初始猜测正确时,broyden1 中的 ZeroDivisionError

  • #3238: lbfgsb 输出未由 disp=0 抑制

  • #3249: Sparse matrix 的 min/max 等不支持 axis=-1

  • #3251: cdist 使用 'sqeuclidean' 度量存在性能问题

  • #3279: logm 对奇异矩阵失败

  • #3285: signal.chirp(method=’hyp’) 不允许双曲上扬

  • #3299: MEMORY LEAK: fmin_tnc

  • #3330: 当前主分支中的测试失败

  • #3345: scipy 和/或 numpy 更改导致另一个测试失败…

  • #3363: splu 不适用于非向量输入

  • #3385: expit 无法很好地处理大参数

  • #3395: specfun.f 在 MinGW 下无法编译

  • #3399: scipy.cluster.hierarchy.linkage 中的错误消息问题

  • #3404: interpolate._ppoly 无法在 MinGW 中构建

  • #3412: signal 中的测试失败

  • #3466: `scipy.sparse.csgraph.shortest_path``scipy.sparse.csr_matrix``lil_matrix` 上无法运行

Pull requests

  • #442: ENH: sparse: 启用 64 位索引数组 & nnz > 2**31

  • #2766: DOC: 移除 doc/seps/technology-preview.rst

  • #2772: TST: stats: 为 stats.wilcoxon 添加回归测试。关闭…

  • #2778: 清理 stats._support,关闭统计审查问题

  • #2792: BUG io: 修复 netcdf 变量的文件描述符关闭

  • #2847: Rice 分布:扩展到 b=0,并添加显式的 rvs 方法。

  • #2878: [stats] 修复 dweibull 分布的更高阶矩公式

  • #2904: ENH:zipf 分布的矩

  • #2907: ENH:使用 coveralls.io 为 Travis 运行添加覆盖信息。

  • #2932: BUG+TST:为 dia_matrix 实现 setdiag 方法(关闭 #2931)…

  • #2942: 由 Eclipse PyDev 静态代码分析指出的杂项修复

  • #2946: ENH:允许 interp1d 中非单调输入

  • #2986: BUG:runtests:运行测试时从根目录切换路径

  • #2987: DOC:linalg:不建议使用 np.linalg.norm

  • #2992: ENH:在 dijkstra 计算中添加 “limit” 参数

  • #2995: ENH:使用 int 类型的形状

  • #3006: DOC:stats:在 docstring 中添加一个对数基数注释

  • #3007: DEP:stats:弃用 randwppf 和 randwcdf

  • #3008: 修复 mstats.kurtosistest,并测试 skewtest/normaltest 的覆盖率

  • #3009: 次要的 reST 打印错误

  • #3010: 将 scipy.optimize.Result 添加到 API 文档

  • #3012: 纠正文档错误

  • #3052: PEP-8 符合性改进

  • #3064: 分箱统计

  • #3068: 修复问题 #3067,修复了在…时引发异常的 cumptrapz

  • #3073: 具有 1 个字符名义值的 Arff 读取器

  • #3074: 一些维护工作

  • #3080: 检查和清理所有 Box-Cox 函数

  • #3083: Bug:如果没有找到区域,则应返回 0

  • #3085: BUG:在 IIR 滤波器设计中使用 zpk 来提高精度

  • #3101: 将 stats 测试稍微重构

  • #3112: ENH:在一维中实现 Akima 插值

  • #3123: MAINT:通过切片更简单地生成范围

  • #3124: imread 和 imsave 的文件对象支持

  • #3126: pep8ify stats/distributions.py

  • #3134: MAINT:将 distributions.py 拆分为三个文件

  • #3138: 清理离散分布的测试

  • #3155: 特殊函数中处理边缘情况 lambda=0 的问题,包括 pdtr、pdtrc 和 pdtrik

  • #3156: 将 optimize.Result 重命名为 OptimizeResult

  • #3166: BUG: 使 curve_fit() 能处理 array_like 输入。关闭 gh-3037。

  • #3170: 修复 numpy 版本检查

  • #3175: 使用 numpy 的 sinc 函数

  • #3177: 更新 numpy 版本警告,移除 oldnumeric 导入

  • #3178: DEP: 移除已弃用的 umfpack 包装器。关闭 gh-3002。

  • #3179: DOC: 将 BPoly 添加到文档中

  • #3180: 运行 stats.test() 时抑制警告

  • #3181: 在 mstats 中修改 sem 函数以匹配 stats 模块

  • #3182: 使 weave 测试行为正常

  • #3183: ENH: 在 stats 模块中添加 k-样本 Anderson-Darling 检验

  • #3186: 修复 stats.scoreatpercentile

  • #3187: DOC: 使 curve_fit 的命名与 leastsq 一致

  • #3201: 在 dendrogram 函数中添加 axis 关键字

  • #3207: 使 stats.distributions 中的文档字符串示例可运行

  • #3218: BUG: integrate 模块中修复带宽雅可比矩阵的处理问题在 “vode” 和…

  • #3222: BUG: 限制 special.nctdtr 中的输入范围

  • #3223: 修复在 numpy 主分支上的测试错误

  • #3224: 修复 sparsetools 中 int32 溢出的问题

  • #3228: DOC: tf2ss 中的 zpk2ss 注意控制器的规范形式

  • #3234: 添加 See Also 链接和示例图到 filter design *ord 函数

  • #3235: 更新 buttord 函数以与其他函数一致

  • #3239: 修正 pchip 插值的文档

  • #3240: DOC: 修复 BPoly 文档字符串中的 ReST 错误

  • #3241: RF: 检查文件对象的写入属性,而不进行实际写入

  • #3243: 统计模块的一些维护工作

  • #3245: BUG/ENH: stats 模块:使冻结分布保持独立实例

  • #3247: 增强功能:返回稀疏矩阵中每行/列的非零元素数量

  • #3248: ENH:使用轴进行更有效的稀疏 min/max

  • #3252: 快速 sqeuclidean

  • #3253: FIX:支持稀疏减少方法中的 axis=-1 和-2

  • #3254: TST:测试稀疏矩阵操作中的非规范输入

  • #3272: BUG:稀疏:修复 dia_matrix.setdiag 中的错误

  • #3278: 运行 paver sdist 时也生成 tar.xz

  • #3286: DOC:更新 0.14.0 版本发布说明。

  • #3289: TST:删除测试中不安全的 mktemp 使用

  • #3292: MAINT:修复对 stats.distributions.all 的向后不兼容更改

  • #3293: ENH:信号:允许在“hyperbolic”中的频率上扫描

  • #3302: ENH:在 stats.mstats.gmean 和 stats.mstats.hmean 中添加 dtype 参数

  • #3307: DOC:在 tf2zpk 中添加关于不同 ba 形式的说明

  • #3309: DOC:增强 scipy.stats.mstats.winsorize 文档

  • #3310: DOC:在 mmio 文档字符串中澄清矩阵与数组的区别

  • #3314: BUG:修复 Python3 下 scipy.io.mmread()读取 gzipped 文件的问题

  • #3323: ENH:在任意维度上的规则网格上进行高效插值

  • #3332: DOC:清理 scipy.special 文档

  • #3335: ENH:改进 nanmedian 性能

  • #3347: BUG: 修复在 stats.fisher_exact 中使用 np.max 的问题

  • #3356: ENH:稀疏:通过 Cython 加速 LIL 索引和赋值

  • #3357: 修复“imresize 不适用于 size=int”

  • #3358: MAINT:将 AkimaInterpolator 重命名为 Akima1DInterpolator

  • #3366: WHT:稀疏:重新缩进dsolve/*.c *.h

  • #3367: BUG:稀疏/解决方案:修复 superlu 中密集矩阵 Fortran 顺序的错误…

  • #3369: ENH:minimize,minimize_scalar:添加对用户提供的支持…

  • #3371: scipy.stats.sigmaclip 在 html 文档中未显示。

  • #3373: BUG: 稀疏矩阵/解决方案:检测超级 LU 中无效的 LAPACK 参数…

  • #3375: ENH:稀疏/解决方案:使 splu 和 spilu 的 L 和 U 因子…

  • #3377: MAINT:使 travis 构建针对 Numpy 1.5 的一个目标

  • #3378: 维护:fftpack:在几个测试中移除 'import *' 的使用

  • #3381: 维护:将 np.isinf(x) & (x>0) 替换为 np.isposinf(x) 以避免…

  • #3383: 维护:在没有 float96 的平台上跳过 float96 测试

  • #3384: 维护:将 pyflakes 添加到 Travis-CI

  • #3386: 错误:稳定评估 expit

  • #3388: 错误:SuperLU:修复未声明的 dlamch

  • #3389: 错误:稀疏:在必要时安全地将 64 位索引降级为 intp

  • #3390: 错误:非线性求解器不会被幸运猜测所混淆

  • #3391: 测试:修复稀疏测试中由于 np.matrix.sum() 中使用 axis=-1,-2 导致的错误

  • #3392: 错误:稀疏/lil:修复 fused 类型查找中的 Cython bug

  • #3393: 错误:稀疏/压缩:解决早期 np.unique 中的 bug

  • #3394: 错误:允许非根节点的 ClusterNode.pre_order() 方法

  • #3400: 错误:cluster.linkage 中的 ValueError 打字错误修复

  • #3402: 错误:special:在 specfun.f 中,用 DCMPLX 替换 CMPLX 的使用

  • #3408: 维护:稀疏矩阵:适配 Numpy 1.5 版本兼容性修复

  • #3410: 维护:插值:修复 _ppoly 中的 blas 定义

  • #3411: 维护:在 interpolate 中修复 Numpy 1.5 的问题

  • #3413: 修复与旧版本 numpy 的更多测试问题

  • #3414: 测试:在过滤器测试中放宽一些误差容限…

  • #3415: 维护:工具:自动关闭发布版的问题和 PR 列表

  • #3440: 维护:手动包装 sparsetools 而不是通过 SWIG 自动化处理

  • #3460: 测试:以二进制模式打开图像文件

  • #3467: 错误:修复 csgraph.shortest_path 中的验证问题

SciPy 0.13.2 发布说明

原文:docs.scipy.org/doc/scipy-1.12.0/release/0.13.2-notes.html

SciPy 0.13.2 是一个修复了 bug 的版本,与 0.13.1 相比没有新功能。

修复的问题

  • 3096: 需要 Cython 0.19,早期版本在融合类型中存在内存泄漏

  • 3079: ndimage.label 修复了 64 位测试的位置问题

  • 3108: optimize.fmin_slsqp 约束违规

SciPy 0.13.1 发布说明

原文链接:docs.scipy.org/doc/scipy-1.12.0/release/0.13.1-notes.html

SciPy 0.13.1 是一个纯粹的 bug 修复版本,与 0.13.0 相比没有新功能。唯一的变化是在 ndimage 中进行了几处修复,其中之一是在 0.13.0 中 ndimage.label 存在的一个严重退化(Github 问题 3025),导致了不正确的结果。

问题已解决

  • 3025: ndimage.label 在 scipy 0.13.0 中返回错误结果

  • 1992: ndimage.label 的返回类型从 int32 改为 uint32

  • 1992: 在某些情况下,ndimage.find_objects 无法处理 int32 输入

SciPy 0.13.0 发布说明

原文:docs.scipy.org/doc/scipy-1.12.0/release/0.13.0-notes.html

内容

  • SciPy 0.13.0 发布说明

    • 新特性

      • scipy.integrate 改进

        • N 维数值积分

        • dopri* 改进

      • scipy.linalg 改进

        • 插值分解

        • 极坐标分解

        • BLAS 第三级函数

        • 矩阵函数

      • scipy.optimize 改进

        • 信任域无约束最小化算法
      • scipy.sparse 改进

        • 布尔比较和稀疏矩阵

        • CSR 和 CSC 精细索引

      • scipy.sparse.linalg 改进

      • scipy.spatial 改进

      • scipy.signal 改进

      • scipy.special 改进

      • scipy.io 改进

        • 未格式化的 Fortran 文件读取器

        • scipy.io.wavfile 增强

      • scipy.interpolate 改进

        • B 样条导数和反导数
      • scipy.stats 改进

    • 已弃用的功能

      • expm2expm3

      • scipy.stats 函数

    • 向后不兼容的更改

      • LIL 矩阵赋值

      • 已弃用的 radon 函数已移除

      • stats.distributions 中移除已弃用的关键字 xaxb

      • MATLAB 文件读取器/写入器的更改

    • 其他变更

    • 作者

SciPy 0.13.0 是经过 7 个月努力的结晶。它包含许多新特性、大量错误修复、改进的测试覆盖率和更好的文档。本次发布中有许多功能已被弃用和 API 更改,这些变更在下文有详细记录。建议所有用户升级到此版本,因为它包含大量错误修复和优化。此外,我们的开发重点现在将转移到 0.13.x 分支的错误修复版本,并在主分支上添加新功能。

此版本需要 Python 2.6、2.7 或 3.1-3.3 以及 NumPy 1.5.1 或更高版本。此版本的亮点包括:

  • 支持使用稀疏矩阵进行精细索引和布尔比较。
  • linalg 模块中的插值分解和矩阵函数
  • 为无约束最小化新增了两个新的信赖域求解器。

新特性

scipy.integrate 的改进

N 维数值积分

新增函数 scipy.integrate.nquad,提供了比 dblquadtplquad 更灵活的 N 维积分功能。

dopri* 的改进

dopri 系列的常微分方程求解器现在可以通过 solout 回调函数访问中间结果。

scipy.linalg 的改进

插值分解

Scipy 现在包括一个新模块 scipy.linalg.interpolative,包含用于计算插值矩阵分解(ID)的相关函数。此功能基于 P.G. Martinsson、V. Rokhlin、Y. Shkolnisky 和 M. Tygert 的 ID 软件包,先前在 K.L. Ho 的 PymatrixId 包中适配为 Python。

极分解

新增函数 scipy.linalg.polar,用于计算矩阵的极分解。

BLAS 第三级函数

BLAS 函数 symm, syrk, syr2k, hemm, herkher2k 现在包含在 scipy.linalg 中。

矩阵函数

几个矩阵函数算法已根据 Nick Higham 及其合著者的最近论文详细描述进行了实现或更新。这些包括矩阵平方根 (sqrtm)、矩阵对数 (logm)、矩阵指数 (expm) 及其 Frechet 导数 (expm_frechet),以及分数矩阵幂 (fractional_matrix_power)。

scipy.optimize 的改进

信赖域无约束最小化算法

minimize 函数新增了两个无约束最小化的信赖域求解器:doglegtrust-ncg

scipy.sparse 的改进

布尔比较和稀疏矩阵

所有稀疏矩阵类型现在都支持布尔数据和布尔运算。两个稀疏矩阵 AB 可以像密集的 Numpy 数组一样进行比较,例如 A < BA >= BA != B。同时也支持与密集矩阵和标量的比较。

CSR 和 CSC 的精细索引

压缩稀疏行和列稀疏矩阵类型现在支持使用布尔矩阵、切片和列表进行精细索引。因此,如果 A 是 CSC 或 CSR 稀疏矩阵,则可以执行如下操作:

>>> A[A > 0.5] = 1  # since Boolean sparse matrices work
>>> A[:2, :3] = 2
>>> A[[1,2], 2] = 3 

scipy.sparse.linalg 的改进

新函数 onenormest 提供了线性算子 1-范数的下界,并根据 Higham 和 Tisseur (2000) 实现。该函数不仅适用于稀疏矩阵,还可用于估算密集矩阵的乘积或幂的范数,而无需显式构建中间矩阵。

线性算子的矩阵指数的乘法作用 (expm_multiply) 已根据 Al-Mohy 和 Higham (2011) 的描述实现。

抽象线性算子 (scipy.sparse.linalg.LinearOperator) 现在可以相乘、相加,并进行指数运算,从而产生新的线性算子。这使得组合线性操作更加容易。

scipy.spatial 的改进

ConvexHull 的顶点现在可以通过 vertices 属性访问,在二维空间中具有适当的方向。

scipy.signal 的改进

添加了余弦窗函数 scipy.signal.cosine

scipy.special 的改进

添加了新函数 scipy.special.xlogyscipy.special.xlog1py。这些函数可以简化和加速需要计算 x * log(y) 的代码,并在 x == 0 时给出 0。

scipy.io 的改进

未格式化的 Fortran 文件读取器

新类 scipy.io.FortranFile 简化了由 Fortran 代码编写的未格式化顺序文件的读取。

scipy.io.wavfile 的增强功能

scipy.io.wavfile.write 现在接受文件缓冲区。之前只接受文件名。

scipy.io.wavfile.readscipy.io.wavfile.write 现在可以处理浮点 WAV 文件。

scipy.interpolate 的改进

B 样条的导数和反导数 (B-spline derivatives and antiderivatives)

添加了用于计算表示 B 样条导数和反导数的 B 样条的函数 scipy.interpolate.splderscipy.interpolate.splantider。这些函数在基于类的 FITPACK 接口中也可用作 UnivariateSpline.derivativeUnivariateSpline.antiderivative

scipy.stats 的改进

分布现在允许在所有方法中使用关键字参数,而不仅仅是位置参数。

函数scipy.stats.power_divergence 现已添加用于 Cressie-Read 力量分歧统计和拟合度检验。包括统计家族中的“G-检验”(en.wikipedia.org/wiki/G-test)。

scipy.stats.mood 现在接受多维输入。

scipy.stats.wilcoxon 添加了连续性修正选项。

scipy.stats.chisquare 现在具有 axis 参数。

scipy.stats.mstats.chisquare 现在具有 axisddof 参数。

弃用功能

expm2expm3

矩阵指数函数 scipy.linalg.expm2scipy.linalg.expm3 已被弃用。所有用户应改用数值更稳健的 scipy.linalg.expm 函数。

scipy.stats 函数

scipy.stats.oneway 已弃用;应改用 scipy.stats.f_oneway

scipy.stats.glm 已弃用。scipy.stats.ttest_ind 是一个等效函数;更全面的一般(和广义)线性模型实现可以在 statsmodels 中找到。

scipy.stats.cmedian 已弃用;应使用 numpy.median

向后不兼容的更改

LIL 矩阵赋值

使用两个索引数组对 LIL 矩阵进行赋值现在类似于对 ndarrays 进行赋值:

>>> x = lil_matrix((3, 3))
>>> x[[0,1,2],[0,1,2]]=[0,1,2]
>>> x.todense()
matrix([[ 0.,  0.,  0.],
 [ 0.,  1.,  0.],
 [ 0.,  0.,  2.]]) 

而不是给出结果:

>>> x.todense()
matrix([[ 0.,  1.,  2.],
 [ 0.,  1.,  2.],
 [ 0.,  1.,  2.]]) 

依赖于先前行为的用户需要重新检查其代码。先前行为可以通过 x[numpy.ix_([0,1,2],[0,1,2])] = ... 获得。

移除了弃用的 radon 函数

弃用于 scipy 0.11.0 版本的 misc.radon 函数已被移除。用户可以在 scikit-image 中找到更全面的 radon 函数。

stats.distributions 中移除了已弃用的关键词 xaxb

自 0.11.0 版本起弃用的关键词 xaxb 已从 scipy.stats 的分布中移除。

MATLAB 文件读取器/写入器的更改

在保存到 MATLAB 5 格式文件时,NumPy 中的 1D 数组现在变成了行向量(形状为 1, N),之前保存为列向量(N, 1)。这是为了统一写入 MATLAB 4 和 5 格式的行为,并适应 NumPy 和 MATLAB 的默认行为 - 例如,np.atleast_2d 返回的 1D 数组会作为行向量。

尝试将大于 2 维的数组保存为 MATLAB 4 格式现在会引发错误,而不是悄悄地重新调整数组为 2D。

scipy.io.loadmat('afile') 以前会在 Python 系统路径 (sys.path) 中查找 afile;现在 loadmat 只会在当前目录中查找相对路径文件名。

其他更改

安全修复:scipy.weave 在特定情况下以不安全的方式使用临时目录,已修复。

现在构建 未发布 版本的 scipy 需要 Cython。从 Cython 源生成的 C 文件不再包含在 git 仓库中,但仍然会在源发布中提供。

代码基础进行了相当大的 PEP8 清理。新增了 tox pep8 命令;新代码应通过此测试命令。

Scipy 现在无法使用 gfortran 4.1 编译(至少在 RH5 上),可能是由于该编译器版本对条目构造的支持不佳。

作者

本发布包含以下人员的工作(至少贡献了一个补丁)按字母顺序排列:

  • Jorge Cañardo Alastuey +

  • Tom Aldcroft +

  • Max Bolingbroke +

  • Joseph Jon Booker +

  • François Boulogne

  • Matthew Brett

  • Christian Brodbeck +

  • Per Brodtkorb +

  • Christian Brueffer +

  • Lars Buitinck

  • Evgeni Burovski +

  • Tim Cera

  • Lawrence Chan +

  • David Cournapeau

  • Dražen Lučanin +

  • Alexander J. Dunlap +

  • endolith

  • André Gaul +

  • Christoph Gohlke

  • Ralf Gommers

  • Alex Griffing +

  • Blake Griffith +

  • Charles Harris

  • Bob Helmbold +

  • Andreas Hilboll

  • Kat Huang +

  • Oleksandr (Sasha) Huziy +

  • Gert-Ludwig Ingold +

  • Thouis (Ray) Jones

  • Juan Luis Cano Rodríguez +

  • Robert Kern

  • Andreas Kloeckner +

  • Sytse Knypstra +

  • Gustav Larsson +

  • Denis Laxalde

  • Christopher Lee

  • Tim Leslie

  • Wendy Liu +

  • Clemens Novak +

  • Takuya Oshima +

  • Josef Perktold

  • Illia Polosukhin +

  • Przemek Porebski +

  • Steve Richardson +

  • Branden Rolston +

  • Skipper Seabold

  • Fazlul Shahriar

  • Leo Singer +

  • Rohit Sivaprasad +

  • Daniel B. Smith +

  • Julian Taylor

  • Louis Thibault +

  • Tomas Tomecek +

  • John Travers

  • Richard Tsai +

  • Jacob Vanderplas

  • Patrick Varilly

  • Pauli Virtanen

  • Stefan van der Walt

  • Warren Weckesser

  • Pedro Werneck +

  • Nils Werner +

  • Michael Wimmer +

  • Nathan Woods +

  • Tony S. Yu +

共有 65 人为此版本做出贡献。名字旁边带有“+”符号的人员是首次贡献补丁的。

SciPy 0.12.1 发布说明

原文:docs.scipy.org/doc/scipy-1.12.0/release/0.12.1-notes.html

SciPy 0.12.1 是一个修复 bug 的版本,与 0.12.0 相比没有新特性。这个版本修复的唯一问题是在 scipy.weave 中的一个安全问题,在特定情况下以不安全的方式使用临时目录。

SciPy 0.12.0 发布说明

原文:docs.scipy.org/doc/scipy-1.12.0/release/0.12.0-notes.html

内容

  • SciPy 0.12.0 发布说明

    • 新功能

      • scipy.spatial 改进

        • cKDTree 功能完善

        • Voronoi 图和凸壳

        • Delaunay 改进

      • 频谱估计器 (scipy.signal)

      • scipy.optimize 改进

        • L-BFGS-B 和 TNC 中的回调函数

        • Basin hopping 全局优化 (scipy.optimize.basinhopping)

      • scipy.special 改进

        • 修订的复杂误差函数

        • 更快的正交多项式

      • 稀疏线性代数特性 (scipy.sparse.linalg)

      • scipy.io 中列出 Matlab(R) 文件内容

      • 已文档化的 BLAS 和 LAPACK 低级接口 (scipy.linalg)

      • 多项式插值改进 (scipy.interpolate)

    • 已弃用的功能

      • scipy.lib.lapack

      • fblascblas

    • 不兼容的后向更改

      • 移除 scipy.io.save_as_module

      • axis 参数添加到 scipy.stats.scoreatpercentile

    • 作者

SciPy 0.12.0 是 7 个月努力的总结。它包含许多新功能、大量的 bug 修复、改进的测试覆盖率和更好的文档。在此版本中有一些已弃用的功能和 API 更改,以下进行了详细记录。建议所有用户升级到此版本,因为有大量的 bug 修复和优化。此外,我们的开发重点将转向在 0.12.x 分支上发布 bug 修复版本,并在主分支上添加新功能。

此版本的一些亮点包括:

  • 在 scipy.spatial 中完成了 QHull 包装。
  • cKDTree 现在是 KDTree 的直接替代品。
  • 新的全局优化器,basinhopping。
  • 支持在相同的代码库中使用 Python 2 和 Python 3(不再需要 2to3)。

此版本要求 Python 2.6、2.7 或 3.1-3.3 和 NumPy 1.5.1 或更高版本。在此版本中已放弃对 Python 2.4 和 2.5 的支持。

新功能

scipy.spatial 改进

cKDTree 功能完整

Cython 版本的 KDTree,即 cKDTree,现在功能完备。在 cKDTree 中,大多数操作(构造、查询、query_ball_point、query_pairs、count_neighbors 和 sparse_distance_matrix)的速度比 KDTree 快 200 到 1000 倍。除了极小的注意事项外,cKDTree 与 KDTree 完全相同的接口,可以作为其替代品使用。

Voronoi 图和凸包

scipy.spatial现在包含使用 Qhull 库计算 Voronoi 图和凸包的功能。(Delaunay 三角剖分自 Scipy 0.9.0 起可用。)

Delaunay 改进

现在可以在 Delaunay 三角剖分中传入自定义的 Qhull 选项。如果存在,则还记录共面点。还可以进行 Delaunay 三角剖分的增量构建。

频谱估计器(scipy.signal

函数scipy.signal.periodogramscipy.signal.welch已添加,提供基于 DFT 的频谱估计。

scipy.optimize改进

L-BFGS-B 和 TNC 中的回调函数

L-BFGS-B 和 TNC 最小化求解器中添加了回调机制。

Basin hopping 全局优化(scipy.optimize.basinhopping

新的全局优化算法。Basinhopping 旨在高效地找到平滑函数的全局最小值。

scipy.special改进

修订的复数误差函数

与误差函数相关的特殊函数的计算现在使用了来自麻省理工学院的新Faddeeva 库,这提高了它们的数值精度。缩放和虚数误差函数erfcxerfi也已添加,而且复数参数下的 Dawson 积分dawsn现在也可以进行评估。

更快的正交多项式

scipy.special中正交多项式的评估(eval_*例程)现在更快,并且它们的out=参数函数也能正常工作。

scipy.sparse.linalg功能

  • scipy.sparse.linalg.spsolve中,b参数现在可以是向量或矩阵。

  • 添加了scipy.sparse.linalg.inv。它使用spsolve来计算稀疏矩阵的逆。

  • 添加了scipy.sparse.linalg.expm。它使用类似于scipy.linalg.expm中现有的稠密数组实现的算法来计算稀疏矩阵的指数。

scipy.io中列出 Matlab(R)文件内容

scipy.io中可用一个新的函数whosmat,用于检查 MAT 文件的内容而无需将其读入内存。

文档化的 BLAS 和 LAPACK 低级接口(scipy.linalg

模块scipy.linalg.blasscipy.linalg.lapack可用于访问低级 BLAS 和 LAPACK 函数。

多项式插值改进(scipy.interpolate

scipy.interpolate 中的重心、Krogh、分段和 pchip 多项式插值器现在接受一个 axis 参数。

已弃用的特性

scipy.lib.lapack

模块 scipy.lib.lapack 已被弃用。您可以使用 scipy.linalg.lapack 替代。模块 scipy.lib.blas 在早期的 Scipy 0.10.0 中已被弃用。

fblascblas

访问模块 scipy.linalg.fblascblasflapackclapack 已被弃用。请改用模块 scipy.linalg.lapackscipy.linalg.blas

不兼容的更改

移除 scipy.io.save_as_module

函数 scipy.io.save_as_module 在 Scipy 0.11.0 中已弃用,并已移除。

其私有支持模块 scipy.io.dumbdbm_patchedscipy.io.dumb_shelve 也已移除。

axis 参数添加到 scipy.stats.scoreatpercentile

函数 scipy.stats.scoreatpercentile 现在接受了一个 axis 参数。默认参数是 axis=None,这意味着计算将在扁平化的数组上进行。在此更改之前,scoreatpercentile 的行为就像给定了 axis=0 一样。对于使用多维数组的 scoreatpercentile,需要在函数调用中添加 axis=0 以保留旧的行为。(在发布 0.12.0 之后很长一段时间才注意到这个 API 更改。)

作者

  • Anton Akhmerov +

  • Alexander Eberspächer +

  • Anne Archibald

  • Jisk Attema +

  • K.-Michael Aye +

  • bemasc +

  • Sebastian Berg +

  • François Boulogne +

  • Matthew Brett

  • Lars Buitinck

  • Steven Byrnes +

  • Tim Cera +

  • Christian +

  • Keith Clawson +

  • David Cournapeau

  • Nathan Crock +

  • endolith

  • Bradley M. Froehle +

  • Matthew R Goodman

  • Christoph Gohlke

  • Ralf Gommers

  • Robert David Grant +

  • Yaroslav Halchenko

  • Charles Harris

  • Jonathan Helmus

  • Andreas Hilboll

  • Hugo +

  • Oleksandr Huziy

  • Jeroen Demeyer +

  • Johannes Schönberger +

  • Steven G. Johnson +

  • Chris Jordan-Squire

  • Jonathan Taylor +

  • Niklas Kroeger +

  • Jerome Kieffer +

  • kingson +

  • Josh Lawrence

  • Denis Laxalde

  • Alex Leach +

  • Tim Leslie

  • Richard Lindsley +

  • Lorenzo Luengo +

  • Stephen McQuay +

  • MinRK

  • Sturla Molden +

  • Eric Moore +

  • mszep +

  • Matt Newville +

  • Vlad Niculae

  • Travis Oliphant

  • David Parker +

  • Fabian Pedregosa

  • Josef Perktold

  • Zach Ploskey +

  • Alex Reinhart +

  • Gilles Rochefort +

  • Ciro Duran Santillli +

  • Jan Schlueter +

  • Jonathan Scholz +

  • Anthony Scopatz

  • Skipper Seabold

  • Fabrice Silva +

  • Scott Sinclair

  • Jacob Stevenson +

  • Sturla Molden +

  • Julian Taylor +

  • thorstenkranz +

  • John Travers +

  • True Price +

  • Nicky van Foreest

  • Jacob Vanderplas

  • Patrick Varilly

  • Daniel Velkov +

  • Pauli Virtanen

  • Stefan van der Walt

  • Warren Weckesser

本次发布共有 75 人贡献了代码。名字后带有“+”符号的是首次贡献补丁的人员。

SciPy 0.11.0 发布说明

原文:docs.scipy.org/doc/scipy-1.12.0/release/0.11.0-notes.html

目录

  • SciPy 0.11.0 发布说明

    • 新特性

      • 稀疏图子模块

      • scipy.optimize 改进

        • 统一的极小化器接口

        • 统一的根查找算法接口

      • scipy.linalg 改进

        • 新矩阵方程求解器

        • QZ 和 QR 分解

        • 帕斯卡矩阵

      • 稀疏矩阵的构造和操作

      • LSMR 迭代求解器

      • 离散正弦变换

      • scipy.interpolate 改进

      • 分箱统计 (scipy.stats)

    • 已弃用的特性

    • 向后不兼容的更改

      • 移除 scipy.maxentropy

      • splev 行为的轻微更改

      • scipy.integrate.complex_ode 行为

      • T 检验行为的轻微更改

    • 其他更改

    • 作者

SciPy 0.11.0 是 8 个月努力的结晶。它包含许多新功能、大量错误修复、改进的测试覆盖率和更好的文档。本次发布的亮点包括:

  • 添加了一个新模块,提供了几种常见的稀疏图算法。
  • 添加了现有优化和根查找函数的新统一接口。

所有用户都鼓励升级到此版本,因为有大量错误修复和优化。我们的开发注意力现在将转向 0.11.x 分支的错误修复发布和主分支上的新功能添加。

此版本要求 Python 2.4-2.7 或 3.1-3.2 和 NumPy 1.5.1 或更高版本。

新特性

稀疏图子模块

新子模块 scipy.sparse.csgraph 实现了一些针对以稀疏邻接矩阵存储的图的高效算法。可用的例程包括:

  • connected_components - 确定图的连通分量
  • laplacian - 计算图的拉普拉斯矩阵
  • shortest_path - 计算正图上点之间的最短路径
  • dijkstra - 使用迪杰斯特拉算法求最短路径
  • floyd_warshall - 使用弗洛伊德-沃沙尔算法求最短路径
  • breadth_first_order - 计算节点的广度优先遍历顺序
  • depth_first_order - 计算节点的深度优先遍历顺序
  • breadth_first_tree - 从给定节点构建广度优先树
  • depth_first_tree - 从给定节点构建深度优先树
  • minimum_spanning_tree - 构建图的最小生成树

scipy.optimize 改进

优化模块在这个版本中受到了很多关注。除了增加了测试、改进文档、修复错误和清理代码外,还进行了以下改进:

  • 添加了一种统一的单变量和多变量函数最小化器接口。

  • 为多元函数添加了一个统一的根查找算法接口。

  • L-BFGS-B 算法已更新至 3.0 版本。

最小化器的统一接口

添加了两个新函数 scipy.optimize.minimizescipy.optimize.minimize_scalar,分别提供了多变量和单变量函数最小化器的通用接口。对于多变量函数,scipy.optimize.minimize 提供了无约束优化方法(fminfmin_powellfmin_cgfmin_ncgfmin_bfgsanneal)或受约束优化方法(fmin_l_bfgs_bfmin_tncfmin_cobylafmin_slsqp)。对于单变量函数,scipy.optimize.minimize_scalar 提供了无约束和有界优化方法(brentgoldenfminbound)。这使得比较和切换求解器更加容易。

根查找算法统一接口

新函数 scipy.optimize.root 提供了多变量函数根查找算法的通用接口,集成了 fsolveleastsqnonlin 求解器。

scipy.linalg 改进

新的矩阵方程求解器

Sylvester 方程的求解器 (scipy.linalg.solve_sylvester),离散和连续 Lyapunov 方程的求解器 (scipy.linalg.solve_lyapunovscipy.linalg.solve_discrete_lyapunov),以及离散和连续代数 Riccati 方程的求解器 (scipy.linalg.solve_continuous_arescipy.linalg.solve_discrete_are) 已添加到 scipy.linalg。这些求解器在线性控制理论领域经常使用。

QZ 和 QR 分解

现在可以使用 scipy.linalg.qz 计算 QZ 或广义 Schur 分解。此函数包装了 LAPACK 的 sgges、dgges、cgges 和 zgges 子例程。

添加了函数 scipy.linalg.qr_multiply,允许高效计算 Q(来自 QR 分解)与向量的矩阵乘积。

Pascal 矩阵

添加了一个用于创建 Pascal 矩阵的函数 scipy.linalg.pascal

稀疏矩阵的构造和操作

添加了两个新函数 scipy.sparse.diagsscipy.sparse.block_diag,用于轻松构造对角线和块对角线稀疏矩阵。

scipy.sparse.csc_matrixcsr_matrix 现在支持 sintanarcsinarctansinhtanharcsinharctanhrintsignexpm1log1pdeg2radrad2degfloorceiltrunc 操作。以前,这些操作需要在矩阵的 data 属性上进行。

LSMR 迭代求解器

LSMR,一种用于解决(稀疏)线性和线性最小二乘系统的迭代方法,已作为 scipy.sparse.linalg.lsmr 添加。

离散正弦变换

scipy.fftpack 中添加了离散正弦变换函数的绑定。

scipy.interpolate 改进

对于球坐标中的插值,添加了三个类 scipy.interpolate.SmoothSphereBivariateSplinescipy.interpolate.LSQSphereBivariateSplinescipy.interpolate.RectSphereBivariateSpline

分箱统计 (scipy.stats)

统计模块增加了进行分箱统计的函数,这是直方图的一般化,支持 1-D、2-D 和多维度:scipy.stats.binned_statisticscipy.stats.binned_statistic_2dscipy.stats.binned_statistic_dd

已弃用的功能

scipy.sparse.cs_graph_components 现已成为稀疏图子模块的一部分,并重命名为 scipy.sparse.csgraph.connected_components。调用前者将产生弃用警告。

scipy.misc.radon 已被弃用。更全面的 Radon 变换可以在 scikits-image 中找到。

scipy.io.save_as_module 已弃用。保存多个 Numpy 数组的更好方法是使用 numpy.savez 函数。

scipy.stats.distributions 中所有分布的 xaxb 参数已不再使用;它们现在已被弃用。

向后不兼容的更改

删除 scipy.maxentropy

scipy.maxentropy 模块在 0.10.0 版本中已弃用,并已移除。scikits.learn 中的逻辑回归是这一功能的一个好且现代的替代方案。

splev 行为的轻微更改

现在,对于大小为 1 的数组,样条评估函数的行为与 interp1d 类似。先前的行为:

>>> from scipy.interpolate import splev, splrep, interp1d
>>> x = [1,2,3,4,5]
>>> y = [4,5,6,7,8]
>>> tck = splrep(x, y)
>>> splev([1], tck)
4.
>>> splev(1, tck)
4. 

修正的行为:

>>> splev([1], tck)
array([ 4.])
>>> splev(1, tck)
array(4.) 

这也影响到 UnivariateSpline 类。

scipy.integrate.complex_ode 行为的更改

complex_odey属性的行为已更改。以前,它以以下形式表达复值解:

z = ode.y[::2] + 1j * ode.y[1::2] 

现在,直接是复值解:

z = ode.y 

T-tests 行为的细微变化

T 检验scipy.stats.ttest_indscipy.stats.ttest_relscipy.stats.ttest_1samp的行为已更改,现在 0 / 0 返回 NaN 而不是 1。

其他变更

scipy.sparse.linalg中的 SuperLU 源已从上游更新到版本 4.3。

函数scipy.signal.bode现在添加了计算连续时间系统幅度和相位数据的功能。

双样本 T 检验scipy.stats.ttest_ind现在增加了一个选项,可以比较方差不等的样本,即 Welch's T 检验。

scipy.misc.logsumexp现在接受一个可选的axis关键字参数。

作者

此版本包含以下贡献者(至少向此版本提交了一个补丁,按字母顺序排列的姓名):

  • Jeff Armstrong

  • Chad Baker

  • Brandon Beacher +

  • behrisch +

  • borishim +

  • Matthew Brett

  • Lars Buitinck

  • Luis Pedro Coelho +

  • Johann Cohen-Tanugi

  • David Cournapeau

  • dougal +

  • Ali Ebrahim +

  • endolith +

  • Bjørn Forsman +

  • Robert Gantner +

  • Sebastian Gassner +

  • Christoph Gohlke

  • Ralf Gommers

  • Yaroslav Halchenko

  • Charles Harris

  • Jonathan Helmus +

  • Andreas Hilboll +

  • Marc Honnorat +

  • Jonathan Hunt +

  • Maxim Ivanov +

  • Thouis (Ray) Jones

  • Christopher Kuster +

  • Josh Lawrence +

  • Denis Laxalde +

  • Travis Oliphant

  • Joonas Paalasmaa +

  • Fabian Pedregosa

  • Josef Perktold

  • Gavin Price +

  • Jim Radford +

  • Andrew Schein +

  • Skipper Seabold

  • Jacob Silterra +

  • Scott Sinclair

  • Alexis Tabary +

  • Martin Teichmann

  • Matt Terry +

  • Nicky van Foreest +

  • Jacob Vanderplas

  • Patrick Varilly +

  • Pauli Virtanen

  • Nils Wagner +

  • Darryl Wally +

  • Stefan van der Walt

  • Liming Wang +

  • David Warde-Farley +

  • Warren Weckesser

  • Sebastian Werk +

  • Mike Wimmer +

  • Tony S Yu +

本次发布共有 55 人做出了贡献。名字后面带有“+”的人首次提交了补丁。

posted @ 2024-06-27 17:07  绝不原创的飞龙  阅读(22)  评论(0编辑  收藏  举报