我想知道是否有一个函数可以在输入向量的情况下给我所有的交互。
例如:
如果我有三个向量a,b,c。他们的价值观是:
a = [1,9,3]
b = [4,3,2]
c = [6,5,7]
然后我可以用:
取回矩阵[a.*b, a.*c, b.*c ]
答案 0 :(得分:1)
所需的计算没有内置函数,但您可以随时编写自己的函数:
%% Define the vectors
a = [1,9,3];
b = [4,3,2];
c = [6,5,7];
%% test function
pairWiseAppend(a,b,c)
%% Define the function
function customVector = pairWiseAppend(a,b,c)
%multiply and generate new vectors
vec1 = a.*b;
vec2 = a.*c;
vec3 = b.*c;
%append the vectors
customVector = [vec1,vec2,vec3];
end
输出:
>> stckOvrflow1
ans =
4 27 6 6 45 21 24 15 14
此外,您可以随时修改功能以满足您的需求,例如,这将返回一个二维数组:
%% Define the vectors
a = [1,9,3];
b = [4,3,2];
c = [6,5,7];
%% test function
customArray = pairWiseAppend(a,b,c)
%% Some extra actions on returned array
%% Define the function
function customArray = pairWiseAppend(a,b,c)
%multiply and generate new vectors
vec1 = a.*b;
vec2 = a.*c;
vec3 = b.*c;
%append the vectors
customArray = [vec1;vec2;vec3];
end
输出:
>> stckOvrflow1
customArray =
4 27 6
6 45 21
24 15 14
希望它有所帮助。