2010-03-29 81 views

回答

7

這是固有的數值病態,但你可以做這樣的事情:

import numpy as np 

x = np.random.randn(500) 
y = np.random.randn(500) 
z = np.random.randn(500) # Dependent variable 

v = np.array([np.ones(500), x, y, x**2, x * y, y**2]) 

coefficients, residues, rank, singval = np.linalg.lstsq(v.T, z) 

您添加的更多方面,更糟糕的事情搞定,數值。你確定你想要一個多項式插值?

對於多項式還有其他的基數,其中的數值矩陣沒有那麼嚴格的條件,但我不記得它們被稱爲什麼;不過,任何大學水平的數值分析教科書都會有這種材料。