📜  Python中的 numpy.apply_along_axis()(1)

📅  最后修改于: 2023-12-03 14:46:35.804000             🧑  作者: Mango

Python中的 numpy.apply_along_axis()

numpy.apply_along_axis()是numpy库中一个非常有用的函数,可以在指定的轴上应用函数。

语法
numpy.apply_along_axis(func1d, axis, arr, *args, **kwargs)
参数
  • func1d:要沿着轴应用的函数。
  • axis:要应用函数的轴。
  • arr:要应用函数的数组。
  • args:func1d的其余参数。
  • kwargs:func1d的关键字参数。
返回值

返回一个与输入数组arr具有相同数量的轴的数组。如果func1d返回标量,则输出数组将具有与输入数组arr相同的形状。否则,输出数组的形状将为输入数组的形状,其中维度由func1d的输出决定。

示例
import numpy as np

arr = np.array([[1, 2], [3, 4]])
print("原始数组:")
print(arr)

# 定义一个函数,对于每个元素加上5
def add_five(x):
   return x + 5

# 应用add_five函数到arr数组的第一维(即行向量)
new_arr = np.apply_along_axis(add_five, axis=0, arr=arr)
print("应用函数后的数组:")
print(new_arr)

输出:

原始数组:
[[1 2]
 [3 4]]
应用函数后的数组:
[[6 7]
 [8 9]]

这个例子中,我们将一个函数add_five应用于二维数组arr的第一维,即行向量。函数将每个元素加上5,并返回一个新的一维数组。通过apply_along_axis()函数,我们成功将add_five函数应用于数组的每一行。