【问题标题】:Block diagonal matrices in MataMata中的块对角矩阵
【发布时间】:2014-02-26 18:49:04
【问题描述】:

我想用 Mata 创建一个块对角矩阵。三个矩阵的文档中有一个示例:

blockdiag(Z1, blockdiag(Z2,Z3))

我不清楚这是否可以扩展到更多矩阵:

blockdiag(Z1, blockdiag(Z2, blockdiag(Z3,Z4)))
blockdiag(Z1, blockdiag(z2, blockdiag(Z3, blockdiag(Z4,Z5))))

或者如果可以编写一些循环结构来更有效地完成矩阵。建议/见解表示赞赏。

【问题讨论】:

    标签: matrix stata


    【解决方案1】:

    您需要做的就是尝试一下。这只是嵌套blockdiag(),它可以工作:

    mata:
    
    A = (1,2 \ 3,4)
    B = (5,6 \ 7,8)
    C = (9,10 \ 11,12)
    D = (13,14 \ 15,16)
    
    AB = blockdiag(A,B)
    
    ABC = blockdiag(A, blockdiag(B,C))
    
    ABCD = blockdiag(A, blockdiag(B, blockdiag(C,D)))
    
    AB
    
    ABC
    
    ABCD
    
    end
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2015-05-21
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2023-03-07
      • 2011-08-16
      • 2021-12-22
      相关资源
      最近更新 更多