[問題] 關於計算Ax=b

看板Python作者 (Dr.)時間9年前 (2016/01/11 19:51), 編輯推噓2(204)
留言6則, 4人參與, 最新討論串1/1
各位前輩 小的最近在解千元一次方程式 Amatrix為1000휱000個值用逗點隔開,如下: 2,3,4,1 2,3,2,2 bvector 為1000個值以換行表示 2 3 4 我想利用numpy去解決這個問題,程式碼如下: import numpy f=open("bvector.txt","r") b=f.read().splitlines() g=open("Amatrix.txt","r") A= [line.split(',') for line in g.readlines()] bnp=numpy.array(b) Anp=numpy.array(A) x=numpy.linalg.solve(Anp,bnp) print x 出現錯誤 Traceback (most recent call last): File "program29.py", line 8, in <module> x=numpy.linalg.solve(Anp,bnp) File "/System/Library/Frameworks/Python.framework/Versions/2.7/Extras/lib/py thon/numpy/linalg/linalg.py", line 382, in solve return wrap(r.astype(result_t)) AttributeError: 'NotImplementedType' object has no attribute 'astype' 我試圖解決這個問題,不過沒有眉目,跪求各位大大幫我解決… -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 123.241.73.109 ※ 文章網址: https://www.ptt.cc/bbs/Python/M.1452513114.A.BAE.html

01/11 21:17, , 1F
你把 Anp bnp print 出來或看一下 dtype,感覺是字串
01/11 21:17, 1F

01/12 14:47, , 2F
感覺應該是樓上說的那樣 小建議: 用numpy來進行數值運算, 如
01/12 14:47, 2F

01/12 14:47, , 3F
果要從純數據檔案中讀入數據的話, 可以多多使用np.loadtxt()
01/12 14:47, 3F

01/14 13:31, , 4F
感覺是讀檔讀到怪怪的東西 整個數列資料型態不對
01/14 13:31, 4F

01/14 13:33, , 5F
numpy.array(A).astype(float)先試試看 b也比照辦理
01/14 13:33, 5F

01/16 21:15, , 6F
這樣一開始預設讀進來會是字串,要自己轉一下喔~
01/16 21:15, 6F
文章代碼(AID): #1MavTQkk (Python)
文章代碼(AID): #1MavTQkk (Python)