excel - 如何使用动态数组函数从具有对角值的列创建对角矩阵

标签 excel matrix excel-formula

我有一个 excel 表,其中有一列值我想用作某些矩阵乘法的对角矩阵。我想在不实际显示对角矩阵的情况下实现这一点,而只在对角矩阵上显示一些矩阵运算的结果,如图中的示例所示。为此,我想要一个动态数组公式来创建对角矩阵,从中可以将结果输入例如 MMULT 函数而不显示对角矩阵。关于如何做到这一点的任何想法?
Column with diagonal values, and diagonal matrix

最佳答案

可以尝试-

=LET(x,IF(MUNIT(ROWS(B3:B5))=1,B3:B5,0),MMULT(x,x))
MAKEARRAY() 的另一种方式
=MAKEARRAY(3,3,LAMBDA(a,b,a*b))*(MUNIT(3))
enter image description here

关于excel - 如何使用动态数组函数从具有对角值的列创建对角矩阵,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/72770254/

相关文章:

c# - 如何通过 COM Interop 在 Excel 中获取特定范围?

matrix - 处理 CUDA 中的矩阵 : understanding basic concepts

excel - 如何根据另一个单元格将单元格值限制为最大值?

excel - 具有多个 if 条件的 ISERROR

python - 使用 Python comtypes 库将查询表添加到 Excel 时出现问题

vba - 如何在 VBA 的列中找到大于零的第一个值?

r - 如何快速执行类似乘法的矩阵运算?

Excel 数据库 - 按日期计算公式乘法汇率

arrays - 将 VBA 中多维数组的整行返回到一维数组

c++ - 如何在 Cuda 编程中对矩阵进行逐元素指数运算