0
私はnumpy.linalg.solve
の結果である単純な配列を持っています。私はnumpy.poly1d()を使って多項式を作成します。どんなに私がしようとするもの:numpy.asarrayを()、numpy.reshape()、numpy.transpose()など、私はこのエラーを取得する:Valueerror numpy.poly1d()
c = [[ 1. -0.99390328 0.1617277 ]]
は係数と私の配列の端子出力である
[[ 1. -0.99390328 0.1617277 ]]
Traceback (most recent call last):
File "aPCv1.py", line 62, in <module>
p = np.poly1d(c)
File "/usr/local/lib/python2.7/dist-packages/numpy/lib/polynomial.py", line 1094, in __init__
raise ValueError("Polynomial must be 1d only.")
ValueError: Polynomial must be 1d only.
。
なぜ係数は2番目のリストの中にラップされていますか?コードを '[[...]]の代わりに' c = [1.0、-0.994、0.162] 'で試してみてください。これが 'linalg.solve'関数の一般的な出力であれば、' numpy.poly1d(c [0]) 'を使ってあなたのリスト内のリストを扱います – offeltoffel