2015-02-11 32 views
0

是否有使用numpys curve_fit(或者另一種擬合程序),以適應係數列表的方式嗎?numpy的curve_fit與向量係數

我知道這是可能適合的形式

def func(x , y , a , b , c) 

其中a,b,c表示係數的功能。

但是我想以適應定義爲函數如下:

def func(x , y , A) 

,其中A =(A,B,C)。

我知道MATLABs「nlinfit」處理其係數這樣但有Python中同樣執行它的方法嗎?

編輯:

主要問題是係數的數量不同。

我找到了一種方法numpy.curve_fit如何接受一個列表

係數通過定義功能

def func(x , y , *A) 

curve_fit適合A的條目的功能。

請注意,我不得不通過提供一個猜測來定義係數的數量爲係數curve_fit

回答

0

如果我理解你的問題是正確的,你只需要一個包裝函數:

def wrapper_func(x, y, a, b, c): 
    return func(x, y, (a, b, c)) 

所以你可以簡單地將包裝函數傳遞給curve_fit

+0

問題是係數的數量不是恆定的。但是我發現了一種方式,它可以像我想要的那樣將參數傳遞給curve_fit。 – steb 2015-02-11 14:53:42