我尝试使用arrayfun应用我写入矩阵中每个元素的函数,但是我使用了错误的函数或者我的语法错误。
我已经编写了一个带有3个输入,1个输出的函数,并将其保存到同一目录中的m文件中。我想调用该函数,其中1个输入是矩阵中的一个元素,剩下的2个输入被设置,并得到一个输出矩阵。
我的代码如下:
fun = @(x) my_function(x,input2,input3);
B = arrayfun(@(x) fun, A)
我收到以下错误
Error using arrayfun function_handle output type is not currently implemented.
答案 0 :(得分:2)
正确的语法是
B = arrayfun(fun, A);
因为fun
已经是您anonymous function的句柄。
请注意,在定义函数之前,必须先定义变量input1
,input2
。这些变量的值为"hard-wired" into the function definition。如果您以后更改这些变量,则不会对该函数产生任何影响。