在 Numpy 中缩减多维数组并沿特定轴添加元素

numpyserver side programmingprogramming更新于 2025/9/2 19:22:17

要缩减多维数组,请使用 Python Numpy 中的 np.ufunc.reduce() 方法。这里我们使用 add.reduce() 将其缩减为元素的添加。轴使用"axis"参数设置。

通用函数 (ufunc) 是一种以逐个元素的方式对 ndarray 进行操作的函数,支持数组广播、类型转换和其他一些标准特性。也就是说,ufunc 是一个函数的"向量化"包装器,它接受固定数量的特定输入并产生固定数量的特定输出。numpy.ufunc 具有对整个数组逐个元素进行操作的函数。 ufunc 用 C 编写(为了速度)并通过 NumPy 的 ufunc 工具链接到 Python。

步骤

首先,导入所需的库−

import numpy as np

创建多维数组 −

arr = np.arange(27).reshape((3,3,3))

显示数组 −

print("数组...
", arr)

获取数组的类型 −

print("
我们的数组类型...
", arr.dtype)

获取数组的维度 −

print("
我们的数组维度……
",arr.ndim)

要对多维数组进行归约,请使用 Python Numpy 中的 np.ufunc.reduce() 方法。这里,我们使用 add.reduce() 将其归约成元素的加法运算。轴使用 "axis" 参数设置。执行归约操作的轴或轴 −

print("
沿特定轴的结果(加法)……
",np.add.reduce(arr, axis = 1))

示例

import numpy as np

# numpy.ufunc 包含对整个数组逐个元素进行操作的函数。
# ufuncs 是用 C 语言编写的(为了提高速度),并通过 NumPy 的 ufunc 功能链接到 Python 中。

# 创建一个多维数组
arr = np.arange(27).reshape((3,3,3))

# 显示数组
print("数组...
", arr) # 获取数组的类型 print("
我们的数组类型...
", arr.dtype) # 获取数组的维度 print("
我们的数组维度...
",arr.ndim) # 要减少多维数组,请使用 Python Numpy 中的 np.ufunc.reduce() 方法 # 在这里,我们使用 add.reduce() 将其减少为元素的相加 # 使用"axis"设置轴参数 # 执行归约的轴 print("
沿特定轴的结果(加法)...
",np.add.reduce(arr, axis = 1))

输出

数组...
[[[ 0 1 2]
[ 3 4 5]
[ 6 7 8]]

[[ 9 10 11]
[12 13 14]
[15 16 17]]

[[18 19 20]
[21 22 23]
[24 25 26]]]

我们的数组类型...
int64

我们的数组维度...
3

沿特定轴的结果(加法)...
[[ 9 12 15]
[36 39 42]
[63 66 69]]

相关文章