作者dramon (Dr.)
看板Python
标题[问题] 关於计算Ax=b
时间Mon Jan 11 19:51:52 2016
各位前辈
小的最近在解千元一次方程式
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://webptt.com/cn.aspx?n=bbs/Python/M.1452513114.A.BAE.html
1F:→ ccwang002: 你把 Anp bnp print 出来或看一下 dtype,感觉是字串 01/11 21:17
2F:推 yogi: 感觉应该是楼上说的那样 小建议: 用numpy来进行数值运算, 如 01/12 14:47
3F:→ yogi: 果要从纯数据档案中读入数据的话, 可以多多使用np.loadtxt() 01/12 14:47
4F:→ painkiller: 感觉是读档读到怪怪的东西 整个数列资料型态不对 01/14 13:31
5F:→ painkiller: numpy.array(A).astype(float)先试试看 b也比照办理 01/14 13:33
6F:推 huei820504: 这样一开始预设读进来会是字串,要自己转一下喔~ 01/16 21:15