Arrays 如何在调用MATLAB';什么是arrayfun?
我有一个函数,它将图像作为参数,并生成一个标签和一个分数作为结果。我偶尔想快速测试一组(单元格)图像,我知道最方便的方法是使用Arrays 如何在调用MATLAB';什么是arrayfun?,arrays,matlab,return-value,Arrays,Matlab,Return Value,我有一个函数,它将图像作为参数,并生成一个标签和一个分数作为结果。我偶尔想快速测试一组(单元格)图像,我知道最方便的方法是使用arrayfun。这对于获取函数生成的标签很有用,但我确实希望输出是一个[label score]单元格列表 我可以在函数周围编写一个包装器,捕获两个值并将它们作为单元格矩阵返回,然后在arrayfun中调用该包装器,但这似乎是一个非常常见的习惯用法,应该有一种更方便地处理多个返回值的方法。有?(可能已经有一个标准的便利函数可以做到这一点?有点像deal..的相反)您可以
arrayfun
。这对于获取函数生成的标签很有用,但我确实希望输出是一个[label score]
单元格列表
我可以在函数周围编写一个包装器,捕获两个值并将它们作为单元格矩阵返回,然后在
arrayfun
中调用该包装器,但这似乎是一个非常常见的习惯用法,应该有一种更方便地处理多个返回值的方法。有?(可能已经有一个标准的便利函数可以做到这一点?有点像deal
..的相反)您可以使用内置语法将输出作为两个矩阵:
[A, B, ...] = arrayfun(fun, S, ...);
例如:
function [y,z]=foo(x)
y= x*x;
z = x + 10;
end
然后运行函数:
[A,B] = arrayfun( @foo, magic(5))
您能提供一些伪代码来准确地演示您希望的行为吗?