75480


以下のエラーがでました。  
AttributeError: 'list' object has no attribute 'cols'  
以下のように出力する方法を教えて下さい。  
Matrix([[-4, 1, 9], [1, 2, -4], [2, -3, 6]])

[code]

    from sympy import *
    var('myMatrix')
    mylist=[[0]*3]*3e
    mylist[0]=[-4, 1, 9]
    mylist[1]=[1, 2, -4]
    mylist[2]=[2, -3, 6]
    myMatrix=Matrix()
    for i in range(len(mylist)):
        print(mylist[i])
        myMatrix = myMatrix.row_insert(i-1, mylist[i])
    print("# ",myMatrix)
    
[/code]

(参考)  
[sympyで,連立1次不等式の係数を取り出してみました。](https://ja.stackoverflow.com/questions/75142/sympy%e3%81%a7-%e9%80%a3%e7%ab%8b1%e6%ac%a1%e4%b8%8d%e7%ad%89%e5%bc%8f%e3%81%ae%e4%bf%82%e6%95%b0%e3%82%92%e5%8f%96%e3%82%8a%e5%87%ba%e3%81%97%e3%81%a6%e3%81%bf%e3%81%be%e3%81%97%e3%81%9f)


CC BY-SA 4.0
2021-04-23T09:23:02.927
75475
2021-04-23T13:42:31.207
17199
question
python sympy 行列
sympyのMatrix.row_insertの使い方を教えて下さい。


`row_insert`でlistを挿入しようとするとエラーが発生します。  
下記のように2か所を書き換えるとうまく行くはずです。

[code]

    from sympy import *
    var('myMatrix')
    mylist=[[0]*3]*3  # FIX
    mylist[0]=[-4, 1, 9]
    mylist[1]=[1, 2, -4]
    mylist[2]=[2, -3, 6]
    myMatrix=Matrix()
    for i in range(len(mylist)):
        print(mylist[i])
        myMatrix = myMatrix.row_insert(i, Matrix([mylist[i]])) # FIX
    
    print("# ",myMatrix)
    
[/code]


CC BY-SA 4.0
2021-04-23T13:42:31.207
75480
2021-04-23T13:42:31.207
9820
75475
answer