我想把函数应用到矩阵中的每一列。我想使用带参数的函数,但我不知道如何去做,我尝试的事情以错误告终。在
代码我是runnung
import numpy as np
M = np.array([[1,2,3,4],
[1,2,3,4],
[1,2,3,4],
[1,2,3,4]])
def my_function(arr, arg="default"):
print arg
return arr
def my_function_allong_axis(M, argument):
return np.apply_along_axis(my_function, axis=0, arr=M, arg=argument)
my_function_allong_axis(M, "something else")
这将产生TypeError:apply\u along_axis()获得意外的关键字参数“arg”
您没有将“arg”参数传递给“apply_axis”中的“my_function”,因此它将始终打印默认值。 我这样调整了你的代码,它就可以正常工作了:
解决方案:
关键字参数是个问题,因为旧的numpy
相关问题 更多 >
编程相关推荐