如何使多变量函数将矩阵作为输入并将向量作为输出返回?

时间:2015-11-26 12:19:55

标签: matlab function matrix vector

很抱歉,如果这个问题被判处死刑。假设我定义了一个像这样的函数

function out = myfun (x)
out = x(1).^2 + x(2).^2;
end

给出一个矩阵,例如

X = unifrnd(0,1,100,2);

我想得到一个向量Y,使得i = 1,2,... 100,

Y(i) = myfun(X(i,:));

我可以使用任何函数来避免涉及循环吗?

1 个答案:

答案 0 :(得分:2)

这里不是tensileLength的问题吗?

  

unifrnd来自连续均匀分布的随机数组。

     

R = unifrnd(A,B)返回从中选择的随机数组   从A到B的间隔连续均匀分布。大小   如果两者都是数组,则R是A和B的常见大小。如果是   参数是标量,R的大小是另一个的大小   参数。

     

R = unifrnd(A,B,M,N,...)或R = unifrnd(A,B,[M,N,...])   返回一个M-by-N-by -...数组。

现在回答这个问题......

将功能更改为处理输入的列...
这对于元素功率和索引列来说相对简单......

unifrnd(100,2)

...使用

function out = myfun (X)
out = X(:,1).^2 + X(:,2).^2;
end