SciPy 1.17.0 发行说明#
SciPy 1.17.0 是 6 个月辛勤工作的结晶。它包含许多新功能、大量错误修复、改进的测试覆盖率和更好的文档。此版本中包含一些弃用项和 API 变更,具体记录如下。建议所有用户升级到此版本,因为其中包含大量的错误修复和优化。在升级之前,我们建议用户检查自己的代码是否使用了已弃用的 SciPy 功能(为此,请使用 python -Wd 运行代码并检查 DeprecationWarning)。我们的开发重心现在将转向 1.17.x 分支的错误修复版本,以及在主分支上添加新功能。
此版本需要 Python 3.11-3.14 以及 NumPy 1.26.4 或更高版本。
此版本的亮点#
许多 SciPy 函数已获得对 N 维数组输入批处理的原生支持,并增加了对数组 API 标准的支持。后者的总体摘要现已在一组 表格 中提供。
在
scipy.sparse中,coo_array现在支持索引。这包括整数、切片、数组、np.newaxis、Ellipsis,支持 1D、2D 和较新的 nD 索引。在scipy.sparse.linalg中,ARPACK 和 PROPACK 从 Fortran77 到 C 的重写现在支持使用外部伪随机数生成器(例如来自 numpy 的生成器)。在
scipy.spatial中,transform.Rotation和transform.RigidTransform已扩展为支持 N 维数组。geometric_slerp现在支持外插 (extrapolation)。scipy.stats增加了矩阵 t 分布和逻辑分布,并进行了许多性能和准确性改进。添加了对 64 位整数 (ILP64) BLAS 和 LAPACK 库的初始支持,包括 MKL 和 Apple Accelerate。如果遇到任何关于 ILP64 的问题,请向我们报告。
新功能#
scipy.integrate 改进#
积分例程
dopri5、dopri853、LSODA、vode和zvode已从 Fortran77 移植到 C。当积分区间为空时,
scipy.integrate.quad现在有一个返回 0 的快速路径。BDF、DOP853、RK23、RK45、OdeSolver、DenseOutput、ode和complex_ode类现在支持下标操作,使它们成为泛型类型,以兼容scipy-stubs。
scipy.cluster 改进#
scipy.cluster.hierarchy.is_isomorphic改进了性能并增加了数组 API 支持。
scipy.interpolate 改进#
向
scipy.interpolate.make_splrep、scipy.interpolate.make_splprep和scipy.interpolate.generate_knots添加了新的bc_type参数,用于控制样条拟合的边界条件。允许的值为"not-a-knot"(默认)和"periodic"。scipy.interpolate.NdBSpline类添加了新的derivative方法,用于构造代表给定样条偏导数的新样条。此方法类似于 1 维样条对象的BSpline.derivative方法。此外,NdBSpline的可变实例属性.c已更改为只读的@property。改进了
scipy.interpolate.RegularGridInterpolator的"cubic"和"quintic"模式的性能。此外,(可变的)实例属性.grid和.values已更改为(只读)属性。scipy.interpolate.AAA的数值稳定性得到了提高,并增加了新的axis参数。scipy.interpolate.FloaterHormannInterpolator增加了对多维、批处理输入的支持,并增加了新的axis参数来选择插值轴。RBFInterpolator获得了一个兼容数组 API 标准的后端,并改进了对 GPU 数组的支持。AAA、*Interpolator、*Poly和*Spline类现在支持下标操作,使它们成为泛型类型,以兼容scipy-stubs。
scipy.linalg 改进#
scipy.linalg.inv例程已改进:它现在尝试检测其参数的结构,并选择合适的低级矩阵求逆例程。新的
assume_a关键字允许在已知结构时绕过结构检测。对于批处理输入,除非提供了明确的assume_a值(在这种情况下,假设批次的所有 2D 切片结构相同),否则将对每个 2D 切片运行检测;添加了新的
lower={True,False}关键字参数,以帮助为对称输入选择输入矩阵的上三角或下三角;详情请参阅scipy.linalg.inv的文档字符串;如果检测到病态 (ill-conditioned) 输入,该例程会发出
LinAlgWarning;改进了批处理输入的性能。
scipy.linalg.fiedler获得了对批处理输入的原生支持。对于某些矩阵结构,
scipy.linalg.solve在批处理输入下的性能得到了提高。
scipy.optimize 改进#
optimize.minimize(method="trust-exact")现在接受特定于求解器的"subproblem_maxiter"选项。此选项可用于确保算法对于具有病态黑塞矩阵 (Hessian) 的函数收敛。optimize.minimize(method="slsqp")使用的回调函数可以通过接受单个关键字参数intermediate_result来选择使用新的回调接口。BroydenFirst、*Jacobian和Bounds类现在支持下标操作,使它们成为泛型类型,以兼容scipy-stubs。
scipy.signal 改进#
abcd_normalize获得了更具信息量的错误消息,文档也得到了改进。get_window现在接受后缀'_periodic'和'_symmetric'来区分周期窗和对称窗(覆盖fftbin参数)。这惠及了coherence、csd、periodogram、welch、spectrogram、stft、istft、resample、resample_poly、firwin、firwin2、firwin_2d、check_COLA和check_NOLA等函数,这些函数使用了get_window但未公开fftbin参数。hilbert2增加了新的关键字axes,用于指定计算二维解析信号的轴。此外,hilbert和hilbert2的文档得到了显著改进。ShortTimeFFT和LinearTimeInvariant类现在支持下标操作,使它们成为泛型类型,以兼容scipy-stubs。
scipy.sparse 改进#
coo_array现在支持索引。这包括切片、数组、np.newaxis、Ellipsis,支持 1D、2D 和新的 nD 索引。因此 COO 格式现在完全支持 nD,且允许在不转换格式的情况下进行索引。其他稀疏矩阵构建函数包括
expand_dims、swapaxes、permute_dims,以及kron函数对 nD 的支持。ARPACK Fortran77 库已移植到 C。在许多变化中,现在可以使用外部随机生成器(包括 NumPy PRNGs)进行可重复的运行。以前由于原始 ARPACK 代码的内部种子设定行为,这是不可能实现的。
同样,PROPACK Fortran77 库也已移植到 C,并具有相同的 PRNG 增强和其他改进。
dok_array现在支持update方法,该方法可用于使用字典、类似dict.items()的可迭代对象或另一个dok_array矩阵来更新稀疏数组。它还会执行额外的验证以确保键是有效的索引元组。tocsr的速度提高了约三倍,并且在更广泛的稀疏格式相互转换中删除了一些不必要的复制操作。添加了
scipy.sparse.linalg.funm_multiply_krylov,这是一种用于计算y = f(tA) b的重启 Krylov 方法。在
sparse.linalg中,LinearOperator、LaplacianNd和SuperLU类现在支持下标操作,使它们成为泛型类型,以兼容scipy-stubs。在
sparse.linalg中,eigs和eigsh函数现在接受一个新的rng参数。
scipy.spatial 改进#
spatial.transform模块获得了一个兼容数组 API 标准的后端。transform.Rotation和transform.RigidTransform已从支持 0D 单值和 1D 数组扩展到支持 N-D 数组,并遵循标准索引和广播规则。两者现在都有以下新增内容:一个
shape属性。其
identity()构造函数增加了一个shape参数,应优先于现有的num参数。这也作为Rotation.random()的参数被添加(RigidTransform目前没有random构造函数)。其
mean()函数增加了一个axis参数。
transform.Rotation.from_euler/from_davenport生成的形状已更改,使其与广播规则保持一致。欧拉角的输入角度现在必须严格匹配最后一个维度中提供的轴数。生成的Rotation形状为np.atleast_1d(angles).shape[:-1]。达文波特角 (Davenport angles) 的角度输入也必须匹配最后一个维度中的轴数。生成的Rotation形状为np.broadcast_shapes(np.atleast_2d(axes).shape[:-2], np.atleast_1d(angles).shape[:-1])。Rotation.from_matrix获得了一个assume_valid参数,当用户能保证矩阵输入有效时,该参数可以提高性能。在已知使用正交矩阵的情况下,from_matrix现在也更快了。scipy.spatial.geometric_slerp函数现在可以进行外插。当给定超出范围 [0, 1] 的值时,geometric_slerp()将在该范围外继续相同的旋转。例如,如果球面插值的start是赤道上的一个点,end是北极的一个点,那么t=-1的值将给您南极的一个点。Rotation.as_euler和Rotation.as_davenport方法增加了一个suppress_warnings参数,用于抑制万向节锁 (gimbal lock) 警告。Rotation.__init__增加了一个新的可选参数scalar_first,并且增加了一个新的Rotation.__setitem__方法。
scipy.special 改进#
以下统计应用函数的参数范围显著提高,错误率降低:
btdtria、btdtrib、chdtriv、chndtr、chndtrix、chndtridf、chndtrinc、fdtr、fdtrc、fdtri、gdtria、gdtrix、pdtrik、stdtr和stdtrit。不完全贝塔函数
betainc、betaincc、betaincinv和betainccinv在极端参数范围内得到了改进。
scipy.stats 改进#
添加了
scipy.stats.matrix_t来表示矩阵 t 分布。它支持计算概率密度函数的pdf(和logpdf)方法以及生成随机变量的rvs方法。添加了
scipy.stats.Logistic用于对服从逻辑分布的随机变量建模。scipy.stats.quantile现在接受一个weights参数来指定频率权重。scipy.stats.quantile在处理大型数组时速度更快,因为它不再内部使用稳定排序。scipy.stats.quantile的method参数支持三个新值:'round_inward'、'round_outward'和'round_neareast',用于数据修整 (trimming) 和温索化 (winsorizing)。scipy.stats.truncpareto现在接受负的指数形状参数,使truncpareto能作为更通用的幂律分布使用。scipy.stats.logser现在提供了特定于分布的sf方法实现,提高了速度和精度。以下函数的实现已经过向量化:
scipy.stats.ansari、scipy.stats.cramervonmises、scipy.stats.cramervonmises_2samp、scipy.stats.epps_singleton_2samp、scipy.stats.fligner、scipy.stats.friedmanchisquare、scipy.stats.kruskal、scipy.stats.ks_1samp、scipy.stats.levene和scipy.stats.mood。通常,这会提高多维(批处理)输入的性能。更新了
scipy.stats.anderson的临界值表。scipy.stats.anderson的新method参数允许用户通过在表格值之间进行插值或使用蒙特卡罗模拟来计算 p 值。必须明确传递method参数,以便向结果对象添加pvalue属性,并避免关于即将移除critical_value、significance_level和fit_result属性的警告。scipy.stats.anderson_ksamp的新variant参数允许用户在三种不同的统计变量之间进行选择,取代了允许在两种统计变量之间切换的midrank参数。新的'continuous'变量在样本中没有结 (ties) 时等同于'discrete',但计算速度更快。必须明确传递variant参数,以避免有关midrank属性弃用以及即将从结果对象中移除critical_values的警告。提高了大多数
scipy.stats.zipfian方法的速度和准确性。scipy.stats.Binomial方法logcdf和logccdf在尾部的精度得到了提高。改进了
scipy.stats.trapezoid.fit的默认推测值。改进了
scipy.stats.binom和scipy.stats.nbinom的cdf、sf、isf和ppf方法的精度和范围。Covariance、Uniform、Normal、Binomial、Mixture、rv_frozen和multi_rv_frozen类现在支持下标操作,使它们成为泛型类型,以兼容scipy-stubs。multivariate_t和multivariate_normal分布增加了一个新的marginal(边缘分布)方法。yeojohnson_llf获得了新参数axis、nan_policy和keepdims,现在返回 numpy 标量,而以前返回 0D 数组。新的
spearmanrho函数是兼容数组 API 的spearmanr替代品。median_abs_deviation函数增加了一个keepdims参数。trim_mean函数增加了新的nan_policy和keepdims参数。
数组 API 标准支持#
我们对数组 API 标准支持/覆盖范围的总体摘要表 现已发布。
减少了与数组命名空间确定相关的开销,提高了分派到不同后端时的性能。
scipy.interpolate.make_lsq_spline、scipy.interpolate.make_smoothing_spline、scipy.interpolate.make_splrep、scipy.interpolate.make_splprep、scipy.interpolate.generate_knots和scipy.interpolate.make_interp_spline已获得支持。scipy.signal.bilinear、scipy.signal.iircomb、scipy.signal.iirdesign、scipy.signal.iirfilter、scipy.signal.iirpeak、scipy.signal.iirnotch、scipy.signal.gammatone和scipy.signal.group_delay已获得支持。scipy.signal.butter、scipy.signal.buttap、scipy.signal.buttord、scipy.signal.cheby1、scipy.signal.cheb1ap、scipy.signal.cheb1ord、scipy.signal.cheby2、scipy.signal.cheb2ap、scipy.signal.cheb2ord、scipy.signal.bessel、scipy.signal.besselap、scipy.signal.ellip、scipy.signal.ellipap和scipy.signal.ellipord已获得支持。scipy.signal.savgol_filter、scipy.signal.savgol_coeffs和scipy.signal.abcd_normalize已获得支持。spatial.transform已获得支持。scipy.integrate.qmc_quad、scipy.integrate.cumulative_simpson、scipy.integrate.cumulative_trapezoid和scipy.integrate.romb已获得支持。scipy.linalg.block_diag、scipy.linalg.fiedler和scipy.linalg.orthogonal_procrustes已获得支持。scipy.interpolate.BSpline、scipy.interpolate.NdBSpline、scipy.interpolate.RegularGridInterpolator和scipy.interpolate.RBFInterpolator已获得支持。为以下函数添加了支持:
scipy.stats.alexandergovern、scipy.stats.bootstrap、scipy.stats.brunnermunzel、scipy.stats.chatterjeexi、scipy.stats.cramervonmises、scipy.stats.cramervonmises_2samp、scipy.stats.epps_singleton_2samp、scipy.stats.false_discovery_control、scipy.stats.fligner、scipy.stats.friedmanchisquare、scipy.stats.iqr、scipy.stats.kruskal、scipy.stats.ks_1samp、scipy.stats.levene、scipy.stats.lmoment、scipy.stats.mannwhitneyu、scipy.stats.median_abs_deviation、scipy.stats.mode、scipy.stats.mood、scipy.stats.ansari、scipy.stats.power、scipy.stats.permutation_test、scipy.stats.sigmaclip、scipy.stats.wilcoxon和scipy.stats.yeojohnson_llf。scipy.stats.pearsonr获得了对 JAX 和 Dask 后端的支持。scipy.stats.variation获得了对 Dask 后端的支持。为
stats.gtstd、stats.directional_stats、stats.bartlett、stats.variation、stats.pearsonr和stats.entropy添加了marray支持。
弃用的功能和未来的变更#
scipy.odr模块在 v1.17.0 中已弃用,并将在 v1.19.0 中被完全移除。建议用户改用odrpack包。scipy.sparse.diags和scipy.sparse.diags_array的默认 dtype 行为将在 v1.19.0 中发生变化。在 v1.19.0 中,
scipy.linalg.hankel将不再展平 (ravel) 多维输入,而是将其视为批处理。scipy.signal.lombscargle的precenter参数已弃用,并将在 v1.19.0 中移除。此外,某些参数将变为仅限关键字 (keyword only)。对于
scipy.stats.anderson,返回对象的元组解包行为以及属性critical_values、significance_level和fit_result已弃用。请使用新的method参数以避免弃用警告。从 SciPy 1.19.0 开始,这些功能将不再可用,返回的对象将具有statistic和pvalue属性。对于
scipy.stats.anderson_ksamp,midrank参数已弃用,应优先使用新的variant参数。这也意味着返回数组中critical_values的存在已弃用。
过期的弃用功能#
scipy.stats.find_repeats已被移除。请改用numpy.unique/numpy.unique_counts。用于 Toeplitz 矩阵的
scipy.linalg函数不再展平 (ravel) n 维输入参数;相反,多维输入被视为批处理。来自
scipy.linalg.interpolative的seed和rand函数已被移除。请改用rng参数。scipy.spatial.distance.cosine和scipy.spatial.distance.correlation的复数输入现在会引发错误。scipy.signal.correlate、scipy.signal.convolve、scipy.signal.lfilter和scipy.signal.sosfilt已停止对对象数组 (object arrays) 和 longdoubles 的支持。kulczynski1和sokalmichener已从scipy.spatial.distance中移除。kron已从scipy.linalg中移除。请使用numpy.kron。从
scipy.interpolate.interpnd中移除了意外公开的函数。scipy.stats.ttest_ind的random_state和permutation参数已被移除。sph_harm、clpmn、lpn和lpmn已从scipy.special中移除。
向后不兼容的变更#
transform.Rotation.from_euler/from_davenport生成的形状已更改,使其与广播规则保持一致。欧拉角的输入角度现在必须严格匹配最后一个维度中提供的轴数。生成的Rotation形状为np.atleast_1d(angles).shape[:-1]。达文波特角 (Davenport angles) 的角度输入也必须匹配最后一个维度中的轴数。生成的Rotation形状为np.broadcast_shapes(np.atleast_2d(axes).shape[:-2], np.atleast_1d(angles).shape[:-1])。
其他变更#
SciPy 使用的 Boost Math 库版本已从
1.88.0升级到1.89.0。在 POSIX 操作系统上,如果用户未自行配置默认方法,SciPy 现在将在 Python 3.13 及更早版本中对
workers=<an-int>调用使用'forkserver'多进程上下文。这遵循了 Python 3.14 的默认行为。添加了对 64 位整数 (ILP64) BLAS 和 LAPACK 库的初始支持。要启用它,请使用
-Duse-ilp64=truemeson 选项构建 SciPy,并确保 LAPACK 库同时公开 LP64 和 ILP64 符号。目前支持的 LAPACK 库是 MKL 和 Apple Accelerate。请注意:ILP64 支持是可选的,是对始终可用的 LP64 接口的补充;
在运行时,您可以通过
get_{blas,lapack}_funcs函数选择 ILP64 变体:scipy.linalg.lapack.get_lapack_funcs(..., use_ilp64="preferred")如果可用则选择 ILP64 变体,否则选择 LP64 变体;cython_blas和cython_lapack模块为了 ABI 兼容性始终包含 LP64 例程。
如果遇到任何关于 ILP64 的问题,请向我们报告。
1.17.0 版本关闭的问题#
#1508: 文档中 Riccati-Bessel 函数拼写错误 (Trac #981)
#3890: ENH: stats.logser: 实现
cdf/sf#4487: “scipy.integrate”的“dopri5”类中的“_solout”反转了...
#5503: ENH: special.betainc: 改进极端试验次数下的错误
#7931: scipy.special.tests.test_basic::TestCephes::test_fdtri 失败...
#9023: 有机会为 scipy.sparse.linalg.eig 添加 seed 或 random_state 参数...
#9185: BUG: sparse.linalg: ARPACK 错误 1
#9460: BUG: sparse.linalg.eigs: 排序行为的可靠性
#10744: BUG: sparse.linalg: 使用 BLIS BLAS 时测试失败
#11805: 致命 Python 错误:段错误 (Segmentation fault) - test_arpack.py::test_symmetric_modes
#12513: BUG: optimize: trust-exact 子问题中的停机问题
#13222: 将 scipy 的 Fortran 代码移植到 NAG 的 nagfor 编译器
#13671: QUERY: signal.coherence: 与 Matlab 的差异
#13692: scipy.sparse.linalg.eigsh 在 macOS 上处理复数矩阵时挂起
#13780: scipy.sparse.linalg.svds 的可重复性
#14498: 当 scipy.signal.detrend 中 type=”constant” 时忽略 overwrite_data=True 关键字参数
#14823: BUG: 特征值/向量例程产生的向量/矩阵...
#15940: odeint (lsoda) 发出过多无法过滤的警告。
#16232: BUG: 由于传递给 non-stealing 的新引用导致内存泄漏...
#18191: BUG: scipy.sparse.linalg._eigen.arpack 中的迭代次数大于……
#18736: TST:
test_hermitian_modes测试失败#18919: BUG: 当 q=1 时,binom.ppf 的结果错误(广播问题?)……
#19291: BUG: firwin(pass_zero=False) 未能阻断直流分量 (DC)
#19756: BUG: sparse.linalg.eigsh:输出特征向量具有非确定性……
#19826: MAINT: gh-19724 的后续跟进(pytest 版本固定、临时 CI 更改……)
#19930: BUG: 多元 t 分布在
df=inf时失效#20050: ENH: interpolate: NdBSpline 偏导数
#20339: BUG: 复数稀疏特征值求解器发生段错误 (Segfault)
#20835: BUG: special.fdtri: 极端参数下的结果不准确……
#21039: ENH: 为
sparse.dia_array实现所有相关方法#21137: BUG: sparse.linalg.svds:
ARPACK error -9: Starting vector is……#21156: DOC:
integrate: 教程中的help命令输出已过时……#21541: ENH: spatial:
Rotation.__mul__: 处理非Rotation类型……#21563: ENH: stats.percentileofscore: 应修复 2D 数组输入问题……
#21716: DOC: conda-forge
compilers包现在也可在 Windows 上使用#21936: BUG:
linalg.blas中的*ger*例程不是线程安全的#22053: MAINT: 构建输出中出现 Cython lint 失败
#22310: BUG: 当 LinearOperator.dtype=None 时,scipy.sparse.linalg.eigsh 返回错误
#22365: BUG: ndimage:
_rank_filter_1d.cpp中的 C++ 内存管理问题#22412: RFC/API: 将
clarkson_woodruff_transform从linalg迁移……#22436: BUG: special.itj0y0:
t > 19时出现回归问题#22500: ENH: spatial.transform: 添加数组 API 标准支持
#22510: performance: scipy.stats 中的 _construct_docstrings 运行缓慢
#22682: BUG: special.betainc: 当 a 和 b 较小时不准确/不正确……
#22794: ENH: 为
stats.quantile添加weights参数,类似于……#22871: BUG: stats.sigmaclip: 返回了奇怪的阈值
#22880: BUG: interpolate: Akima1DInterpolator 对有效值抛出 ValueError……
#22887: DEV: 合并
spin支持后的后续任务#22974: ENH: sparse.linalg: 矩阵函数的 Krylov 方法
#22979: DOC: optimize.nnls: 应该是平方 2-范数而非 2-范数?
#22980: DEV:
spin test -b all重复添加了两次--pyargs scipy#23021: DEV: 我们能否“采集”全包范围的
make_xp_test_case信息?#23053: DEV:
spin smoke-docs重复添加了一个选项#23080: BUG: optimize: 使用多进程时打开文件过多
#23101: BUG: special: 伴随 Legendre 函数中的不连续性
#23111: BUG: stats.pmean: 无穷阶时的值错误
#23116: BUG:
spin build导致的UserWarning#23124: CI: (重新)采用
(d)tach进行模块化强制执行#23136: DEV/DOC: 更新
_lib.decorator的引入代码页#23160: DOC: signal.medfilt: 移除过时的注释
#23166: BENCH/DEV:
spin bench的--quick选项无效(总是……#23171: BUG:
interpolate.RegularGridInterpolator在 2D 网格上失败……#23195: BUG: 插值分解的新后端在处理 (1xn) 时失效……
#23204: BUG/TST: stats:
ttest_ind的极慢 (XSLOW) 测试失败#23208: DOC: scipy.io 中部分警告缺失文档字符串
#23231: DOC: 修复 scipy v1.12.0 发布说明中的错误
#23237: DOC: API 参考文档中缺失面包屑导航且侧边栏不同……
#23248: BUG/TST:
differentiate的test_dtype在float16下失败……#23272: BUG: linalg.interpolative.reconstruct_matrix_from_id: 段错误……
#23297: BUG [nightly]: spatial.transform.Rotation.from_quat: 失败原因……
#23301: BUG: 自由线程:基于 multiprocessing.Pool 的功能……
#23303: BUG: spatial.transform.Rotation: 警告不一致
#23330: BUG: special.kv: AMOS Fortran 代码翻译错误导致……
#23334: DEV:
spin lint: 始终使用sys.executable#23344: CircleCI 基准测试任务需要
hypothesis#23345: DOC: 文档字符串中 PPoly.c 的维度错误
#23352: DOC: spatial.is_valid_dm: 具有误导性的文档
#23355: Chatterjee's Xi 根据
numpy版本返回不同结果……#23358: BUG: stats: 0 的 ppf 返回了分布范围之外的值……
#23369: DOC: interpolate: NearestNDInterpolator 支持多维……
#23371: BUG: (interpolate) 如果输入……_dierckx.data_matrix 抛出 ValueError
#23382: BUG: 使用
sparse.xxx_{matrix,array}2D 单元素赋值#23383: DOC/DEV: 修正可编辑安装的
spin指南#23390: BUG: stats.sampling: osx-arm64 上多个类发生段错误
#23391: ENH: spatial.transform: 数组 API 标准支持追踪器
#23400: ENH: spatial.geometric_slerp: 允许外推
#23409: BUG: stats.qmc.Sobol: 在 low_0_bit 中陷入死循环……
#23412: TST: stats:
marray测试在最新的 array-api-strict 下失败#23418: BUG: 由于不正确的……scipy.signal.square 忽略了输入 dtype
#23423: CI: 新的 BLAS 测试 CI 任务未遵循 CI 跳过规则
#23431: DOC: interpolate.RbfInterpolator: “注意”部分中的方程式错误
#23449: DOC/ENH: signal.get_window: 对称/周期性的默认值不同……
#23462: BUG: sparse: load_npz 对维数 > 2 的 coo_arry 失败
#23477: DOC: 文件
scipy/_lib/_lazy_testing.py已被移除#23510: BUG: NdBSpline 在导数阶数过高时发生段错误
#23514: DOC: 在 README 中添加 LFX Insights 徽章
#23517: SHGO: 向目标函数传递参数时出现问题
#23542: BUG: interpolate: 运行时来自
fpknot的内部错误……#23551: BUG: stats.levene: 当
center="trimmed"时测试结果不正确#23553: BUG: scipy.sparse.csgraph.yen 因源点越界崩溃……
#23555: BUG: a 数组为空的 lfilter 可能触发误导性错误……
#23556: BUG: 除数或信号数组为空的 deconvolve 导致不一致……
#23559: DOC: stats:
fligner文档字符串中的一个参考文献出现了两次。#23581: BUG:
xp_capabilities在文档字符串中添加了空行#23596: DOC: stats.f_oneway 的 equal_var 参数版本信息错误
#23603: TST: 适配 NumPy 警告更改(空切片的平均值)
#23608: DOC: 明确
scipy.spatial.transform.Rotation.ra的分布……#23640: BUG: optimize: minpack LMSTR 中的终止准则不正确?
#23644: BUG: sparse:
csc_array.setdiag()导致索引未排序且未……#23670: BUG:
xp_promote和xp_result_type对大张量运行缓慢……#23678: BUG: stats: 从
zipfian生成的自定义分布具有……#23686: BUG: macOS x86_64 上的 scipy 1.16.2 在 scipy.sparse.linalg.eigsh 中挂起……
#23689: CI: optimize: “UserWarning: 'where' used without 'out'” 错误……
#23703: DOC: special:
factorialk文档字符串中的第二个参数……#23704: DOC: optimize: LinearConstraint 文档中的拼写错误
#23708: TST:
FAILED scipy/stats/tests/test_continuous.py::TestDistributions::test_func……#23710: BUG:
signal/tests/test_short_time_fft.py::test_closest_STFT_dual_window_roundt……#23711: BUG:
stats/tests/test_axis_nan_policy.py::test_axis_nan_policy_axis_is_None#23715: BUG: integrate: 基准测试 integrate.CubatureOscillatory.time_plain……
#23720: TST: torch 下 test_as_euler_symmetric_axes 的容差问题
#23742: QUERY: 拟合 4 参数 beta 分布导致非预期的……
#23750: TST: signal: 为备选后端测试添加更好的隔离……
#23760: DOC/DX:
spin ipython --help缺失必须使用--的说明……#23762: ENH: interpolate.RegularGridInterpolator:
eliminate_zeros()……#23763: BUG: scipy.odr.ODR 在 job=1 且显式……时发生段错误
#23778: ENH: 提高 csc 数组转换为 csr 数组的性能……
#23825: TST: 缺失
mathieu_even_coef和mathieu_odd_coef的测试#23832: DOC:
stats.quantile中的广播机制#23852: BUG/TST: stats: stats 中出现新的极慢 (XSLOW) 测试失败
#23867: BUG:
special.comb(0, 0, repetition=False) == 0,而非 1#23879: DOC: RigidTransform.as_components 文档有误
#23910: TST: stats:
test_non_finite_inputs_and_int_bins在自由线程下失败#23925: DOC: “scipy.sparse……”的参数“shape”文档无效。
#23932: CI: mypy 和 clang 任务因“未使用函数”错误失败……
#23989: CI: Windows 任务挂起,OpenMP 冲突
#24043: DEV: 从
dtach切换到tach#24046: TST: stats: TestStudentT.test_moments_t 失败
#24052: CI: TypeError: 数组输入存在多个命名空间
#24089: ENH: spatial.transform: 为
Rotation.from_matrix添加normalize参数#24131: BUG:
1.17.0rc1: ModuleNotFoundError: No module named 'scipy.integrate._lso……#24152: DOC: 1.17.0rc1 发布说明中未提及的 1.17 API 变更……
#24212: BENCH, MAINT: (sparse) asv 套件兼容 NumPy 2.4.0
#24251: CI: linalg: ILP64 下的若干测试失败
#24256: DOC: 1.17.0rc2 发布说明中未提及的 1.17 API 变更……
1.17.0 的合并请求 (Pull requests)#
#19668: ENH: optimize.minimize: 为……添加
subproblem_maxiter选项#21683: ENH:MAINT:integrate: 用 C 语言重写 DOP F77 代码
#22041: BUG: 对
obj执行Py_DECREF以避免内存泄漏#22506: ENH: special.btdtria: 迁移至 boost
#22539: ENH/MAINT: 将
special.chndtr及其反函数迁移至 boost#22644: ENH: stats.quantile: 支持修剪 (trimming)/温索化 (Winsorizing) 的方法
#22699: ENH: special: boost 化 F 分布函数
#22743: ENH: ILP64 BLAS/LAPACK 支持
#22748: ENH:MAINT: sparse.linalg: 用 C 语言重写 ARPACK
#22795: ENH: special: 向
_support_alternative_backends添加更多函数#22827: ENH: stats: 为剩余的几个函数添加
marray支持#22856: MAINT: stats: 确保函数可在非默认设备上运行
#22857: ENH: stats: 为大部分
_axis_nan_policy添加数组 API 支持……#22885: MAINT: eager_warns: 接受 xp 作为仅限关键字参数
#22889: MAINT: 将
special.btdtrib迁移至 boost#22907: BENCH: stats.qmc.geometric_discrepancy: 添加基准测试
#22911: ENH: signal: 滤波器设计函数的数组 API 支持
#22914: ENH: signal: 为
filter_design添加数组 API 兼容性……#22924: ENH: linalg: 低级 nD 支持,第 3 次尝试
#22925: ENH: stats: 添加矩阵变量 t 分布
#22938: TST:
signal为新集合的处理添加测试覆盖……#22962: MAINT: 将
stdtr和stdtrit迁移至 boost#22972: ENH: spatial.transform.RigidTransform: 重构为纯 Python……
#22983: ENH: sparse.linalg: 用于评估……的重新启动 Krylov 方法
#22989: ENH:
cluster: 向量化is_isomorphic#23006: REL: 将版本设置为 1.17.0.dev0
#23009: ENH: sparse: 提高从 DIA 到 CSR 格式的转换效率
#23012: BENCH: 针对备选数组后端的 asv 基准测试
#23015: DOC: scipy.signal.ShortTimeFFT.k_max: 修复切片索引
#23016: MAINT: 提高最低 NumPy 版本要求
#23019: BUG: interpolate.Akima1DInterpolator: 相同的重新排列……
#23020: ENH: interpolate.BSpline: 添加数组 API 标准接口
#23023: DEP: stats: 移除 find_repeats
#23026: DEV: 移除
--parallel,转而依靠spin的--jobs……#23028: MAINT: 创建
_lib._array_api_override以解决循环……#23034: DEP: linalg.interpolative: 移除 seed 和 rand
#23039: TYP: 修复并改进
linalg._decomp_lu_cython存根#23041: DOC/DEV: 更新针对
spin的开发者文档#23043: DEP: linalg: 移除 kron
#23045: DEP: interpolate.interpnd: 移除来自私有模块的附带导入
#23050: DEV: 添加
spin notes和spin authors命令#23052: ENH: interpolate: 基于 BSpline 的
make_函数的数组 API 支持#23057: ENH: 通过缓存加速
array_namespace#23058: CI: 清理自由线程任务,使用已发布的 Cython/Pythran
#23059: MAINT: 从 _factorialx_array_exact 中移除 NaN 处理
#23060: DOC: 修正 meson-distutils 中的一个脚注
#23062: DEV: 协助调试 Fortran 模块的自由线程构建
#23063: DEV: 忽略
pixi-dev-scipystack目录#23065: ENH: stats.tukey_hsd: 改进
TukeyHSDResult.__str__`中的数组索引迭代……#23071: ENH: linalg:
solve中的低级批处理支持#23073: TST:
linalg: 重构test_blas#23078: MAINT: smoke-docs: 向……添加
--doctest-only-doctests标志#23081: DOC: 添加总结各……数组 API 后端能力的表格
#23082: TST: linalg: 线程安全的随机数生成器 (rng)
#23083: TST: linalg: pytest-run-parallell 导致内存不足
#23084: TST: linalg: BLAS
ger*中的竞态条件#23085: TST: signal: 修复不稳定的 TestZpk2Sos
#23087: CI: 将预发布和自由线程任务迁移至 CPython 3.14-dev
#23089: ENH/DEP: linalg: toeplitz 及相关函数支持批处理
#23092: DEV: 解决
spin docs命令中的问题#23093: DEV: 移除
spin smoke-docs中重复的--doctest-collect=api#23094: DOC: linalg: 修复
cdf2rdf和khatri_rao的概览#23095: DEV: 弃用
python dev.py,改用spin#23096: CI: 迁移至
cibuildwheel3.0b4 和manylinux_2_28#23104: ENH: stats:
variation函数支持 Dask#23105: ENH: stats:
pearsonr支持 Dask 和 JAX#23108: MAINT: 移除……中
*_impl函数的可选参数#23112: MAINT: 移除
stats.tests.test_stats.py中重复的测试#23117: BUG: 移除
linalg._decomp_interpolative中的cdef导出#23118: TYP: 泛型
signal.ShortTimeFFT类型#23121: BUG: sparse.linalg.LaplacianNd: 周期性特征向量
#23123: TYP: 禁用 NumPy 已弃用的 mypy 插件
#23125: MAINT: 将引入的
_lib.decorators模块更新至v5.2.1#23129: DOC: special.roots_jacobi: 在文档字符串中添加示例
#23130: DEV: spin: 将
--setup-args的简写改为-S以……#23138: MAINT: sparse: 从
_spbase中移除 Python 2 残留#23140: TST: 修复缺失的异常
#23143: TST: 对
xp测试运行 pytest-run-parallel#23149: TST: ndimage.vectorized_filter: 在测试中添加缺失的断言
#23151: CI: 在 GitHub Actions 上使用 4 核
#23152: TST: io: 将内存峰值占用降低 9 倍
#23153: TST: optimize: 限制 pytest-run-parallel 的内存占用
#23173: ENH/DOC: signal.hilbert: 重构以避免额外的缩放数组……
#23175: MAINT: 升级 array-api-compat;加速
array-namespace#23176: BUG:
spin bench忽略了--quick参数#23181: DOC: spatial: 刚体变换文档清理
#23190: BUG/BENCH: 从
spin bench中移除无条件的--quick……#23193: ENH: spatial: 优化
RigidTransform的性能#23194: MAINT: 改进 RigidTransform.from_rotation 的错误类型
#23198: ENH: spatial.transform.Rotation: 重构为纯 Python 类……
#23201: DOC : 移除
medfilt函数中过时的注释#23202: DEP: spatial: 对余弦和相关性函数的复数输入抛出错误
#23205: TST: stats.ttest_ind: 移除对已弃用/已移除参数
permutations的测试#23207: CI: 在数组 API 测试中始终设置 Python
#23210: DEP: spatial.distance: 移除 kulczynski1 和 sokalmichener 度量
#23212: DEP: signal: 移除对对象数组和长双精度 (longdouble) 的支持……
#23213: MAINT: 正向移植 1.16.0 发布说明
#23218: ENH: sparse: 为 1d、2d 和 nD 添加 COO 索引支持
#23223: MAINT: 将
_test_fortran.f移植为test_fortran.py中的 Python 函数#23224: MAINT: _lib: 移除旧的/不需要的代码
#23232: DOC: 修复 1.12.0-notes.rst 中的拼写错误
#23233: ENH: 在
make_splrep中实现对bc_type="periodic"的支持……#23234: TYP: 泛型
interpolate类型#23243: DEP: special: 移除已弃用的函数
#23244: TYP: 泛型
optimize类型#23247: ENH/DOC: signal.hilbert2: 重构以避免额外的缩放数组……
#23249: ENH: spatial.transform.Rotation: 添加数组 API 后端
#23253: BUG: interpolate.RegularGridInterpolator: 修复线性插值……
#23254: DOC: special: LaTeX 清理
#23255: MAINT:
spatial._plotutils: 移除 matplotlib 1 代码#23256: MAINT: 移除
_lib._threadsafety#23257: DOC: 将孤立模块添加到 toctree
#23258: MAINT: 不依赖
decorator进行sparse测试#23259: ENH: stats:
Logistic分布#23260: MAINT: 移除
_lib.decorator#23262: TST: sparse.linalg: 提高
funm_multiply_krylov的覆盖率#23264: TST:
test_axis_nan_policy: 遇非预期异常时跳过#23265: TST: signal: 为多维数组添加
zpk2tf测试#23267: MAINT: sparse: 移动
_validate_indices和_asindices……#23271: DOC: interpolate.make_interp_spline: 修复细微的格式错误……
#23273: DOC: interpolate.make_splprep: 修复维度顺序
#23274: MAINT:sparse.linalg: ARPACK 重命名为 Arnaud 及其项目结构……
#23275: TST: 停止使用 suppress_warnings 和 assert_warns
#23286: TST: signal: 数组 API 转换后的测试清理
#23287: MAINT: differentiate: 添加
xp_capabilities#23288: MAINT: optimize: 为函数标记
xp_capabilities#23289: DOC: 添加指向 Golub 和 Van Loan 著作《Matrix Computations》的链接
#23290: TST: differentiate: 为
jacobian使用正确的xp_capabilities#23291: BENCH: sparse: 为稀疏数组参数化基准测试并……
#23294: TST: 更好的线程不安全标记并重新启用 pytest-run-parallel……
#23298: BUG: spatial.transform.Rotation.from_quat: 修复 dtype 推断……
#23300: DOC: development_workflow: 修复 SciPy 提交准则链接
#23304: TST: optimize: 加速
test__basinhopping#23305: TST: linalg: 使
test_expm_multiply兼容 pytest-run-parallel#23306: TST: 自由线程性能微调
#23307: TST: 自由线程:更多局部随机数生成器 (RNG)
#23311: MAINT/TST: 在 POSIX 上始终使用 forkserver 模式的多进程
#23313: BLD: 支持 Windows 上 flang/clang-cl 的构建警告
#23317: BUG: sparse.linalg: 修复 Windows 上的 arpack 复数数组问题
#23319: TST: io.wavfile: 为
SeekEmulatingReader.seek添加测试#23320: BUG:DOC: sparse.linalg: 修复更多 arnaud bug 并添加 C 代码文档
#23324: BUG: stats: 避免在 Python 以
-OO运行时构建文档字符串#23325: DOC: interpolate/RBF: 调整文档字符串示例及维度
#23326: DEV: 从
.gitignore中移除一个非生成文件#23327: DOC/BUG: 修复一些动态修改的文档字符串。
#23331: TST: 从
pytestmark读取@xp_capabilities#23340: DEP/MAINT: sparse: 更改 ‘diags_array’ 的默认 dtype 行为……
#23341: BUG: signal: zpk2tf: 支持对多维数组的 array-api-strict
#23343: DOC: 修复琐碎的拼写错误
#23346: DOC: 修正文档字符串中 PPoly.c 的维度
#23349: BENCH, TST: 不依赖 hypothesis 的基准测试
#23350: BUG: linalg: 修复
solve(..., assume_a='pos', lower=False)#23354: DEV: 在 spin lint 中全面使用
sys.executable#23357: ENH, MAINT: 为 solve 和 inv 添加 assume_a="diagonal"
#23359: DOC: 为
show_config()添加示例#23360: DOC: io: 为警告和错误添加文档字符串
#23362: MAINT: linalg.{inv, solve}: 改进批处理的错误报告……
#23366: DOC: 澄清 is_valid_dm 不检查三角不等式
#23368: TST: linalg: 为
test_orth_memory_efficiency小幅上调容差#23370: ENH: spatial: 为……添加抑制万向节锁 (gimbal lock) 警告的能力
#23374: DOC: 修正了 NearestNDInterpolator 的文档字符串
#23375: ENH: 添加
NdBSpline.derivative方法#23381: MAINT: stats: 对所有公共函数应用 xp_capabilities 装饰器
#23388: DOC: 修复数组 API 支持表
#23389: MAINT: cluster.hierarchy: 将 set_link_color_palette 标记为超出……
#23392: MAINT: datasets: 将函数标记为超出数组 API 范围……
#23393: DOC: 移除手动维护的数组 API 支持列表
#23394: DOC: stats.rv_continuous.ppf/isf: 记录惯例说明
#23399: ENH: 添加 Accelerate ILP64 支持及 CI 任务
#23401: DOC: 正向移植 1.16.1 发布说明
#23404: DOC: special: 修复
*_all函数的输出形状#23405: MAINT:BLD:_lib: 从……中移除已弃用的 Python TLS 回退代码
#23406: DOC: stats.false_discovery_control: 添加输入不需要……的说明
#23410: MAINT: integrate: 为公共函数添加 xp_capabilities
#23415: MAINT: ndimage: 为公共……中的函数添加
xp_capabilities#23416: DOC: 为 scipy.stats.kendalltau 添加复杂度说明
#23420: MAINT: 解除 special-linalg 与 linalg-sparse 之间的导入依赖
#23421: DX: 不要对 cython 构建输出进行 lint 检查
#23422: DOC: special: 为 ellipeinc 添加示例并修正文档字符串……
#23424: ENH: spatial: 优化 Rotation 的性能
#23425: ENH: spatial.transform.RigidTransform: 添加数组 API 后端
#23426: ENH: spatial.geometric_slerp: 允许外推
#23427: DOC: stats.chatterjeexi: 说明如何处理
x中的结 (ties)#23432: DOC: interpolate.RBFInterpolator: 修复拼写错误
#23434: CI: 修复
linux_blas.yml任务中的跳过条件#23439: DOC: special: 为 loggamma 添加一些简单示例。
#23443: BUG: stats.qmc: 避免 sobol 在请求……时陷入无限循环
#23453: MAINT: 支持 ruff 0.12
#23454: ENH, MAINT: 更简单的 calculate_areas()
#23456: DOC: 更新 Jupyter 项目治理链接
#23463: DOC: sparse.kronsum: 添加示例
#23465: BUG: sparse: nD 稀疏 save_npz 和 load_npz
#23466: DOC: 移除一条备注中的样板文字
#23467: ENH: spatial.transform.Rotation: 支持广播
#23468: DOC: optimize.shgo: 修正
minimize_every_iter的描述#23470: DOC: 更新一个关于 numba 支持的链接
#23473: DOC: special.hankel1: 添加示例并移除旧的文档字符串副本
#23476: DEP: signal.lombscargle: 弃用
precenter参数#23479: DOC: 更新过时的
lazy_xp_function引用#23483: ENH: signal.abcd_normalize: 重构、改进文档字符串并使其……
#23486: DOC: special: 移除重复的文档字符串
#23489: DOC: 明确 nnls 最小化的是平方 2-范数(关闭 #22979)
#23491: DOC: signal.detrend: 明确
overwrite_data的行为#23492: DOC: 移除
help(integrate)的输出#23494: ENH: integrate.quad: 若上下限相等则直接返回
#23496: DOC: special: 添加了指向数学函数数字图书馆 (DLMF) 的引用
#23497: ENH: integrate.romb: 数组 API 支持
#23498: TST: 补充
integrate.quad上下限……时的测试#23499: ENH: 更新 boost 至 1.89
#23501: ENH: integrate.cumulative_trapezoid: 添加数组 API 支持
#23502: DOC: 在文档字符串的数组 API 支持部分添加标题
#23504: BUG: stats: trapezoid.fit 不收敛
#23507: ENH: 为
linalg.orthogonal_procrustes……添加数组 API 支持#23511: DOC: interpolate: Ndbspline 导数方法列表
#23512: MAINT: 移除未使用的 cdflib 代码
#23513: ENH: integrate.cumulative_simpson: 添加数组 API 支持
#23518: ENH/BUG: signal.get_window: 重构并允许 '_periodic' 和……
#23520: BUG: shgo 篡改了用户提供的字典
#23521: BUG: shgo 应为 fun/jac/hess 接受 args
#23523: MAINT: 使用 reshape 而非直接设置……的 shape 属性
#23524: MAINT: 使用 reshape 而非直接设置……的 shape 属性
#23526: MAINT: 使用 reshape 而非直接设置……的 shape 属性
#23528: CI: 切换至 windows-2025 [wheel 构建]
#23531: ENH:MAINT: sparse.linalg: 用 C 语言重写 PROPACK
#23534: ENH: sparse: 添加
swapaxes,permute_dims,expand_dims……等函数#23535: BUG: special: 修复被颠倒的上溢和下溢错误消息。
#23536: DOC: 将数学符号转换为 Latex 以保持格式一致
#23537: ENH: 添加两个与广义调和数相关的私有 ufunc。
#23538: MAINT: differential_evolution,polish 接受一个可调用对象
#23547:
linalg.solve: 将 “sym”/”her” 求解器移至 C 语言实现#23557: BUG: 修复 levene 和 fligner 在使用 trimmed……时测试结果不正确的问题
#23558: DOC:
special.modfresnelm文档字符串方程式修正#23562: DOC: 修复 fligner 文档字符串中的重复和失效链接
#23565: DOC/DEV: 更新针对
spin install的可编辑安装指南#23566: MAINT: 使用 np.view 而非直接设置 dtype
#23569: ENH: interpolate.FloaterHormannInterpolator: 添加 axis 参数
#23572: DOC: 修复 API 参考文档中的一些拼写错误
#23573: MAINT: slsqp 回调函数接受 intermediate_result
#23574: ENH: linalg.fiedler: 添加原生批处理支持和数组 API 支持
#23575: MAINT: 使用 boost master 分支
#23579: ENH: interpolate.AAA: 添加对角线缩放以改善条件数
#23584: ENH: 将
special.chdtriv迁移至 boost#23585: MAINT: 移除由各种装饰器添加到文档字符串中的空行
#23586: MAINT: 升级 array-api-extra 至 v0.9.0
#23588: MAINT: 使用 jit 测试 spatial.transform.Rotation.__iter__
#23590: ENH: linalg.block_diag: 添加数组 API 支持
#23591: DOC: 移除拼写错误
#23592: MAINT: special: 用……替换不推荐使用的断言函数
#23598: DOC: 修复 API 参考文档中的格式问题
#23599: DOC: stats.f_oneway: 将 versionadded 改为 1.16.0
#23600: MAINT: 修复……中更多的内存管理和错误处理问题
#23601: DOC: 正向移植 1.16.2 发布说明
#23606: MAINT: signal: 简化
cheb2ap公式#23607: BUG: signal.lfilter: 为无效……提供更有意义的错误消息
#23609: BUG: signal.deconvolve: 为无效……提供更有意义的错误消息
#23610: TYP: 更多泛型
integrate类型#23614: TST: 为 NumPy 警告更改提供垫片 (shim)
#23616: BUG: ndimage: 修复内存分配失败的处理。
#23618: BUG: sparse.csgraph.yen: 校验源点和汇点以避免段错误……
#23620: MAINT: io: 改进
spmatrix参数处理及描述……#23621: DOC/BUG: signal.firwin: 改进文档
#23623: DOC: stats.levy_stable: 改进
#23625: ENH: sparse: 添加 DOK 更新方法及测试
#23626: BUG:sparse: 允许通过稀疏容器设置单元素值
#23627: DOC: spatial: Rotation.random: 在文档字符串中提及分布
#23629: CI: 使用 asv<0.6.5 以避开该版本的问题 - 修复……
#23630: DEV: 从子模块中移除
shallow#23632: MAINT: spatial.transform.Rotation:
from_euler/from_davenport……#23633: MAINT/TST: stats: 放宽一项测试容差。
#23636: TST: stats: 再次针对
marray后端进行测试#23638: CI: 适配
gpu-ci.yml至新的 Pixi 工作区#23645: MAINT:optimize: 修复 MINPACK 中缺失的指针解引用
#23646: CI: 修复由于新版
click发布导致的spin损坏问题#23647: CI: 修复由于新版 click 发布导致的 spin 损坏(跟进)
#23649: CI: 对
array_api.yml和lint.yml使用 Pixi#23650: DOC: 更新 scipy.optimize.root 中的一个参考链接
#23653: MAINT: 修复
spatial.transform.RigidTransformxp 后端注释#23654: CI: 对
macos.yml使用 Pixi#23655: ENH: stats.truncpareto: 允许负指数
#23658: CI: Pixi: 使用
no-pin策略并重构环境#23659: MAINT: signal: 去除
_swapaxes辅助函数的重复#23661: DOC: 改进连续分布描述中的格式
#23662: ENH: signal: 将 Savitzky-Golay 滤波器转换为数组 API
#23666: DOC/DEV: 记录
scipy.signal在数组 API 方面的注意事项。#23667: ENH: integrate.qmc_quad: 添加数组 API 支持
#23668: MAINT: signal: 收紧对象数组的变通处理
#23669: DOC: linalg: 记录批处理支持
#23671: DOC: 在 CSS 中更新稳定版切换按钮样式
#23674: MAINT: 修复空白字符测试
#23675: ENH: spatial.transform.RigidTransform: 支持广播
#23676: BUG: 修复 #23644: sparse:
csc_array.setdiag()导致索引……#23677: ENH: sparse: 添加 nD kron 稀疏构建
#23679: MAINT/STY:
spatial._kdtree: 修复……默认值的类型#23680: MAINT: linalg.hankel: 警告不要改变多维数组的行为……
#23683: MAINT: sparse: 避免最近自由线程下
test_matrix_io.py……的问题#23688: MAINT: 从允许的符号中移除 'o'(希腊字母 omicron)。
#23690: DOC: spatial.transform.Rotation: 更新文档
#23692: MAINT: stats.pmean: 强制要求
p为有限值#23693: ENH: stats.mode: 添加数组 API 支持
#23694: DOC: 修正
scipy.sparse.linalg中细微的格式问题#23695: DOC: spatial.transform.RigidTransform: 更新文档
#23696: TST: special: 避开
mpmath测试中极慢的边缘情况#23697: DEV: 改进关于调试构建的
spin build --help#23699: DOC: stats.sigmaclip: 结果可能不符合直觉特性
#23702: ENH: stats.lmoment: 添加数组 API 支持
#23705: MAINT: stats.rv_discrete.ppf/isf: 修复数组参数的行为……
#23706: MAINT: stats.multivariate_t.logpdf/pdf: 修复无限自由度特殊……
#23709: ENH: stats.alexandergovern: 添加数组 API 支持
#23713: TST: macos-15-intel
#23714: DOC: 修正
factorialk参数文档中的拼写错误#23716: TST: stats.Binomial.logcdf: 提高尾部精度
#23717: ENH: 将 special.pdtrik 迁移至 boost
#23718: ENH: spatial: 实现
RigidTransform.mean()#23719: DOC: 细微拼写错误
#23721: TST: test_as_euler_symmetric_axes 容差上调
#23724: DOC: 修复 scipy.linalg.polar
u的文档字符串。#23726: 修复拼写错误 (coefficent -> coefficient)
#23727: MAINT: 统一
spatial.[c]KDTree方法的参数默认值……#23729: BUG: spatial: 修复 ndim > 1 时 Rotation 均值的形状
#23733: ENH: stats.logser: 实现 sf 方法
#23735: CI: 静默 pyparsing 3.3.0a1 的弃用警告
#23739: 维护:stats:移除对
np.random.seed的使用#23740: 修复文档中将 Riccati 误拼为 Ricatti 的拼写错误
#23741: 文档:signal.hilbert:示例中使用瞬时频率
#23743: Cygwin 插值测试预期失败 (xfail)
#23744: 增强:stats.bootstrap:支持 Array API
#23745: 文档:stats.beta:记录 3 参数和 4 参数 MLE 的问题
#23746: 增强:为 RBFInterpolator 添加 Array API 支持
#23752: 文档:在 ndimage 教程中将一段话从代码移至 markdown
#23753: 维护:interpolate:在
make\_函数中使用 xp-capabilities#23755: 修复:interpolate:如果所有权重均为零,则优雅地报错
#23758: 增强:使用 xsf 的不完全函数实现
gdtrix和gdtria…#23759: 增强:interpolate:使 NdBSpline 和 RGI 兼容 Array API
#23764: 文档:special:统一修正型贝塞尔函数阶数并修复 Hankel…
#23765: 测试:signal:仅在函数中隔离替代后端的使用…
#23767: 修复:signal:修复
test_closest_STFT_dual_window_roundtrip…#23769: 文档:
special._specfun.eulerb:修复 cython 文档字符串#23770: 维护:清理一些过时的 CPython C API 惯用法
#23771: 修复:odr:防止显式模型且 job=1 时出现段错误 (#23763)
#23772: 增强:stats.permutation_test:添加 Array API 支持
#23773: 文档/开发者体验:记录在 spin ipython 和 spin python 中
--的用法#23775: 增强:stats.power:添加 Array API 支持
#23779: 增强:stats.false_discovery_control:添加 Array API 支持
#23780: 增强:interpolate.RegularGridInterpolator:从中移除零…
#23782: 增强:通过不使用稳定排序来加速分位数计算
#23788: 测试:一些测试容差的上调
#23789: 文档:改进
scipy.optimize模块的格式#23792: 持续集成:在 Windows 作业中使用 Pixi
#23795: 维护:stats.iqr:为 Array API 转换做准备
#23796: 测试:进一步上调测试容差以适应 Accelerate
#23797: 增强:sparse:在适当的位置为
astype()添加copy=False参数…#23802: 基准测试:为 scipy.stats.quantile 添加简单基准测试
#23803: 增强:stats.sigmaclip:添加 Array API 支持
#23804: 文档:将数学叙述转换为 LaTeX 格式 [仅限文档]
#23807: 增强:stats.yeojohnson_llf:添加 Array API 支持
#23808: 文档:删除两个对无用文件的引用
#23809: 增强:stats.median_abs_deviation:添加 Array API 支持
#23810: 增强:stats.brunnermunzel:添加 Array API 支持
#23812: 文档:修复拼写错误
#23816: 文档:
special.diric:“Dirichlet function” 改为 “Dirichlet…#23819: 增强:stats.cramervonmises_2samp:向量化统计量和渐近计算…
#23822: 增强:stats.kruskal:向量化实现
#23823: 维护:interpolate:将旧版函数标记为不属于 Array API 范围…
#23824: 文档:
special.mathieu_odd_coef:“even” 改为 “odd”#23828: 增强:spatial.transform.Rotation 为
Rotation.mean添加 axis 参数#23831: 文档:修正几处拼写错误和缩进
#23834: 增强:stats.friedmanchisquare:简化并向量化实现
#23835: 文档:stats.quantile:明确广播行为
#23837: 增强:stats.mood:向量化实现
#23838: 测试:special:更新一些 Mathieu 函数的测试。
#23840: 增强:stats.levene:向量化实现
#23841: 构建:提升 wheel 构建镜像版本
#23843: 增强:stats.ansari:向量化实现
#23844: 开发:将 Pixi 工作区移动到仓库根目录
#23845: 文档:修正 scipy.stats.kstatvar 中 var(k2) 的分母
#23846: 文档:删除参考文献中一个无效的 URL
#23847: 增强:stats.fligner:向量化实现
#23849: 增强:stats.chatterjeexi:添加 Array API 支持
#23850: 文档:改进有向豪斯多夫距离 (Hausdorff distance) 的文档
#23851: 增强:stats.spearmanrho:兼容 Array API 的
spearmanr替代函数#23853: 文档:spin:对 python 和 ipython 命令的帮助文本进行润色。
#23855: 测试:stats.multiscale_graph_correlation:更新参考值
#23856: 测试:sparse.linalg.tfqmr:避免因平台相关而导致的失败…
#23858: 文档:使 DOI 可点击
#23861: 文档:修正拼写错误:an 1d -> a 1d
#23862: 增强:stats.kruskal:添加 Array API 支持
#23863: 增强:special:为
_gen_harmonic添加双精度类型处理...#23865: 维护/测试:stats.yeojohnson_llf/boxcox_llf:修复/测试 nan_policy/keepdims…
#23866: 文档:为
scipy.spatial.KDTree添加参考论文#23869: 增强:spatial.transform.Rotation:为
random及其它函数添加 shape 参数…#23870: 增强:stats.mannwhitneyu:添加 Array API 支持
#23871: 文档:stats:修复 boxcox 文档字符串中的一些数学标记。
#23873: 文档:将
scipy.stats.moyal的参考文献更新为新 URL#23874: 测试:spatial.transform.Rotation:修复
Rotation.random测试#23875: 增强:spatial.transform.RigidTransform:为以下项实现
shape…#23876: 文档:在
fractional_matrix_power的参考论文中添加 DOI…#23877: 维护/持续集成:使用
dtach强制执行模块化#23880: 测试:interpolate.AAA:上调测试容差
#23881: 增强:stats.epps_singleton_2samp:向量化实现
#23883: 文档:前向移植 1.16.3 版本说明
#23887: 文档:修正代码注释中的语法问题
#23889: 增强:stats.levene:添加 Array API 支持
#23890: 文档/测试:stats.quantile:记录并测试 JAX 支持
#23891: 增强:stats.iqr:添加 Array API 支持
#23893: 维护:stats.epps_singleton_2samp:输入中的 NaNs/Infs -> NaNs…
#23895: 修复:linalg:修复 MKL ILP64 符号错误命名
#23897: 文档:sparse:为三个新函数的文档字符串添加示例章节
#23898: 增强:stats.wilcoxon:添加 Array API 支持
#23899: 增强:stats.friedmanchisquare:添加 Array API 支持
#23903: 测试:signal:标记失败的测试以疏通持续集成流水线
#23904: 基准测试:integrate:在持续集成中跳过极慢 (xslow) 的基准测试
#23905: 持续集成:在 Intel oneAPI 工作流中释放磁盘空间
#23911: 测试:stats:避免修改共享的 self.u
#23912: 增强:stats.fligner:添加 Array API 支持
#23914: 增强:integrate:用 C 语言重写 LSODA
#23915: 修复:
special:修复eval_{legendre,中的收敛判据…#23917: 文档:special:椭球调和函数并非拉梅函数 (Lame)
#23920: 开发:更新
CODEOWNERS#23921: 修复:signal:确保各处滤波器函数的 dtype 一致…
#23922: 修复:optimize:为 py314 添加关于
inspect.signature的包装器…#23928: 增强:stats.cramervonmises_2samp:添加 Array API 支持
#23929: 增强:stats.epps_singleton_2samp:添加 Array API 支持
#23930: 增强:stats._xp_searchsorted:私有向量化 searchsorted
#23933: 增强:spatial.transform:为
RigidTransform.mean添加axis参数#23934: 文档:spatial:RigidTransform 文档微调
#23936: 构建/持续集成:添加 ASAN 抑制和持续集成作业
#23937: 测试:
spatial.transform.RigidTransform:添加多维拼接…#23940: 修复:sparse.csgraph:移除相对导入以适配 Cython 3.2
#23941: 增强:stats.quantile:添加对频数权重的支持
#23942: 文档:修正 “scipy.sparse.random_array” 的 “shape” 类型
#23948: 文档:stats.cumfreq:修正图表的分箱边缘
#23952: 维护:stats:消除来自…的 “unused function” 构建噪声
#23954: 基准测试:interpolate:修复 RGI 子类化基准测试
#23955: 文档:在 Array API 表中列出类
#23956: 维护:为
BSpline添加xp-capabilities#23963: 增强:integrate:用 C 语言重写 VODE 和 ZVODE
#23964: 增强:stats.ks_1samp:向量化实现
#23966: 增强:stats.cramervonmises:向量化并添加 Array API 支持
#23970: 增强:stats.ks_1samp:添加 Array API 支持
#23971: 增强:stats.ansari:添加 Array API 支持
#23974: 增强:stats:更新了正态分布的分步临界值…
#23975: 维护:signal:移除 detrend 中一个过时的变通方案
#23976: 文档:interpolate.interpn:在示例中添加数值对比
#23979: 修复:special:修复
comb(n, 0, repetition=True)返回0的问题…#23981: 增强:stats._xp_searchsorted:简化、边界情况处理及向量化…
#23982: 开发:更新 Pixi 工作区名称和描述
#23984: 开发:更新 CODEOWNERS
#23986: 维护:同步并更新 scipy-openblas 至 0.3.30.0.8
#23987: 持续集成:减少 GitHub Actions 中的缓存使用
#23988: 持续集成:为
setup-pixi添加environments参数以记录依赖关系#23993: 构建/开发:在 Windows 上强制使用 openblas
#23994: 文档/构建:澄清 RHEL 中
yum的用法#24003: 维护:stats:重新启用 qmc 中关于 “unused function” 的警告…
#24004: 持续集成:在自由线程作业中使用 numpy 稳定版
#24006: 维护:移除
optimize.differential_evolution中的一个循环引用#24007: 测试:optimize.least_squares:减少进程数和线程数…
#24008: 修复:修复特殊函数中与解释器崩溃相关的…
#24012: 测试:optimize.minimize:通过以下方式使 trust-constr 测试线程安全…
#24013: 修复:确保
_fitpack_repro._validate_inputs中的输入为 C 连续的…#24016: 持续集成:每 2 天在 main 分支运行缓存密集型的 OneAPI 作业以进行优化…
#24017: 修复:special.assoc_legendre_p:更新
xsf以修复z=-1,…#24023: 测试:integrate.qmc_quad:容差上调
#24024: 增强/测试:signal:为 scipy.signal 添加 xp_capabilities
#24025: 文档:stats:为 Cramer von Mises 函数添加方程式
#24028: 维护:integrate:初始化变量以消除编译器警告
#24029: 增强:stats.mood:添加 Array API 支持
#24030: 增强:stats.anderson:添加
method参数#24031: 增强:stats.anderson_ksamp:添加
variant参数#24033: 弃用:弃用
scipy.odr#24036: 持续集成:每 2 天在 main 分支运行 Windows OneAPI 作业以预取缓存
#24039: 文档/测试:fft:使用
xp_capabilities标记 Array API 覆盖范围#24040: 文档:在 README 中添加 LFX Insights 徽章
#24044: 文档:optimize.minimize:修复
trust-exact的subproblem_maxiter文档…#24045: 维护:signal:移除零散的 np.testing 断言
#24047: 测试:stats.t:为矩测试 (moment test) 添加容差
#24048: 开发:从
dtach切换到tach#24049: 维护:针对大规模情况加速
xp_promote和xp_result_type…#24050: 开发:从工作区移除未使用的
build-mkl任务#24053: 修复:signal:修复一个 GetWindow 测试
#24056: 增强:spatial:为以下项分离出
from_matrix正交化过程…#24057: 维护:修复来自 pytest-run-parallel 的弃用警告
#24059: 持续集成:撤回预发布版 NumPy,并从 np2 发布版恢复隔离…
#24061: 维护:修复 nnls 文档中的拼写错误
#24063: 测试:linalg/solve:重新启用并修复 “pos def” 求解测试
#24067: 开发:添加 test-coverage 和 test-xslow 任务
#24068: 开发:tach:使用
respect_gitignore = "if_git_repo"#24070: 维护:interpolate/RBF:在 pythran 中使用固定宽度整数
#24071: 开发:添加
bench任务#24076: 修复:对于
NdBSpline中超出范围的导数阶数返回零...#24077: 维护:锁定 Pixi 版本以修复持续集成
#24080: 弃用:signal.lombscargle:弃用位置参数,并对
precenter=False发出警告#24083: 增强:stats.f_oneway:添加 Array API 支持
#24085: 文档:linalg:编辑文档说明:我们不再导入 numpy linalg…
#24092: 增强:spatial.transform:为
Rotation.from_matrix添加assume_valid参数…#24094: 测试:fft:为所有使用
uarray的函数设置allow_dask_compute#24095: 文档:differential_evolution - 修复自定义策略示例中的拼写错误
#24097: 增强:stats:在
stats.multivariate_t中添加边缘函数#24098: 测试:linalg:取消跳过一个测试
#24100: 文档:SciPy 1.17.0 版本说明
#24106: 修复:interpolate:修复 _deBoor_D 导数中 h[m] -> h[n] 的拼写错误…
#24107: 增强:linalg/solve:将三对角求解切片迭代移出…
#24111: 构建/开发:修复 Windows 构建
#24113: 文档:signal:将一些旧版函数标记为不属于 Array API 范围…
#24118: 维护:1.17.0rc1 的版本锁定/准备
#24129: 发布:将 1.17.0rc2 设置为未发布
#24132: 文档:更新 mailmap
#24133: 修复:integrate:修复找不到模块 ‘scipy.integrate._lsoda’ 的问题
#24138: 文档:版本说明:改进 sparse 亮点部分的措辞
#24139: 接口:
linalg.inv:仅限关键字的assume_a和lower…#24140: 接口:
signal.savgol_coeffs:仅限关键字的xp和device#24143: 类型:通用的
signal.LinearTimeInvariant类型#24145: 修复:
sparse:修复coo_matrix.__setitem__签名#24151: 维护:linalg:对零大小的批次抛出异常
#24155: 维护:提升
xsf版本以修复special.itj0y0的回退问题#24161: 修复:linalg.interpolative:修复 id_dist Cython 的两个边缘情况…
#24174: 撤销:integrate:撤销 LSODA 中的步长更改
#24207: 维护:SciPy 1.17.0rc2 的后向移植
#24213: 测试:fft:在 fft 更多位置添加 allow_dask_compute=True
#24214: 文档:针对 RBFInterpolator 更新 1.17.0 说明
#24218: 基准测试、维护:兼容 NumPy 2.4.0 基准测试
#24223: 构建:linalg:为
_fblas设置link_language: 'fortran'#24239: 维护:提升 array-api-compat 以适配 JAX>=0.8.2
#24240: 维护:将 array-api-compat 提升至 1.13 标签
#24250: 修复:stats._unuran:修复 va_args 内存损坏错误
#24255: 发布:将 1.17.0rc3 设置为未发布
#24260: 文档:stats.anderson/anderson_ksamp:改进版本说明
#24284: 持续集成:修复 ILP64 作业的构建失败和未锁定的 scipy-openblas 问题…
#24304: 文档:在版本说明中澄清 ILP64 支持的注意事项