2014-11-06 15 views
5

Próbuję dopasować kwadrat do niektórych danych eksperymentalnych i używając polyfit w numpy. Czekam na uzyskanie wklęsłej krzywej, a więc chcę się upewnić, że współczynnik wyrażenia kwadratowego jest ujemny, również samo dopasowanie jest ważone, ponieważ w niektórych punktach występują pewne wagi. Czy istnieje prosty sposób na zrobienie tego? Dzięki.Ograniczony np.polyfit

Odpowiedz

1

Użycie wag opisane jest jako here (numpy.polyfit). Zasadniczo potrzebujesz wektora masy o tej samej długości co x i y.

Aby uniknąć niewłaściwego znaku współczynnika, można użyć dopasowania definicji funkcji jak

def fitfunc(x,a,b,c): 
    return -1 * abs(a) * x**2 + b * x + c 

To daje ujemny współczynnik x ** 2 w każdej chwili.

+0

widzę, że dzięki. –

0

Można użyć curve_fit .

Albo można uruchomić polyfit z rangi 2 i jeśli ostatni współczynnik jest większy niż 0. bieg ponownie polyfit liniowa (polyfit o randze 1)

Powiązane problemy