如何将两个向量的元素的每种组合相乘并在第三个向量中输出?

如何将两个向量的元素的每种组合相乘并在第三个向量中输出?

我需要一个能够执行以下操作的函数或函数组合:

给定两个包含布尔值(也可能是整数)的向量:
V1 = {0;1}
V2 = {1;0;1}

我想生成第三个向量,它包含 v1 和 v2 元素的所有组合的乘积:

V3 = {V1[1]*V2[1];V1[1]*V2[2];V1[1]*V2[3];V1[1]*V2[2];V1[2]*V2[2];V1[2]*V2[2]}

或者,以我为例:

V3 = {0;0;0;1;0;1}

我需要这种方式的输出,以便我可以使用超过 2 个集合迭代执行此操作。

或者,如果有人知道如何在公式(如“=M2VEC(A1:C3)”)中将矩阵转换为向量(M2VEC 可在公式中使用),我认为这也能解决我的问题,因为我只需将 V1 和 V2^T 相乘(转置),然后转换为向量即可。这将产生相同的结果。

我更喜欢使用 Excel 365 中的矢量函数。

答案1

给定两个垂直的数组矢量1Vector2

=LET(x,ROWS(Vector1),y,ROWS(Vector2),z,SEQUENCE(x*y,,0),INDEX(Vector1*TRANSPOSE(Vector2),1+INT(z/y),1+MOD(z,y)))

将产生所需的第三个垂直的大批。

相关内容