2016-03-17 5 views
1

Я пытаюсь повторно использовать метод, который я прочитал в документе, но не уверен, как это сделать. Он основан на полиномиальном подгонке наименьших квадратов и его производной.набор и производные полинома python

У меня есть мои входные данные, такие, что:

x = [ 421.25571634 426.25279224 431.24986815 436.24694405 441.24401995 
     446.24109586 451.23817176 .............. 621.13875245 626.13582836 
     631.13290426 636.12998016 641.12705606 646.12413197] 

y = [ 0.02931459 0.03093554 0.03563261 0.03440331 0.03535223 0.03594375 
     0.03639583 .......... 0.0525954 0.05118096 0.05143359 0.05036936  
     0.04952418 0.04774826] 

я могу соответствовать 5-й порядок наименьших квадратов полинома это с помощью:

coeffs = numpy.polyfit(x, y, 5) 
ffit = numpy.poly1d(coeffs) 

и можно построить с помощью этого Matplotlib.

ffit возвращает меня:

  5    4    3   2 
6.267e-12 x - 1.642e-08 x + 1.709e-05 x - 0.008833 x + 2.266 x - 231.1 

Однако, я хотел бы найти первую производную от этого и построить эту линию также. Есть ли питонический способ сделать это? У меня много данных, поэтому нужно как можно более автоматизировать. Я понимаю дифференциацию, но я не уверен, как это сделать на питоне.

ответ

0

Вы можете использовать fderiv = ffit.deriv(). Это вернет производную типа poly1d.