Я ищу, чтобы найти площадь под кривой. Кривая не может быть переведена в удовлетворительное уравнение. Кодирование довольно простое.
from scipy.integrate import simps
import numpy as np
y = np.array([1489.263705,1226.774401,5576.973322,1394.189836,1151.001948,867.5819289,773.5496598,1076.135273,1067.513122,3072.972271,2826.697242,1200.779848])
x = np.array([40126,40154,40193,40226,40295,40325,40352,40379,40406,40448,40476,40490])
print simps(y,x)
Поскольку мой набор данных на самом деле не такой большой, я попытался сделать это вручную в Excel. Один раз с помощью функции =ПРОГНОЗ и один раз вручную разбив ее на линейные уравнения между разными точками измерения. Три разных способа дают разные результаты. =ПРОГНОЗ (значение = 686,6569835 ) и ручное разбиение (678,9578851) очевидно - ручное лучше, оно использует больше точек. Путь Python дает 662.425396.
Вопрос 1. Какая математика стоит за дискретным интегрированием. Конечно, оно линейное, но почему тогда оно не дает того же результата?
Вопрос 2 - Какой результат наиболее правильный и почему? Я могу интегрировать несколькими способами, используя scipy, как я могу определить, какой из них лучше, не зная результата?
Надеюсь, что этот вопрос не слишком.
С уважением, Матиас