Интегрировать массив с помощью scipy

Я ищу, чтобы найти площадь под кривой. Кривая не может быть переведена в удовлетворительное уравнение. Кодирование довольно простое.

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, как я могу определить, какой из них лучше, не зная результата?

Надеюсь, что этот вопрос не слишком.

С уважением, Матиас


person Mathias    schedule 12.05.2015    source источник


Ответы (1)


Вопрос 1. Хорошее введение находится здесь http://en.wikipedia.org/wiki/Numerical_integration.

Вопрос 2: Если вы не знаете кривую (уравнение), трудно сказать, какой результат интегрирования является лучшим.

person matousc    schedule 12.05.2015
comment
Спасибо. Я знаю, как работает интеграция. Мне просто интересно, как интеграция произойдет именно в этой ситуации - например. как выполняется интерполяция. Ожидается линейный результат, но ручной результат отличается. - person Mathias; 13.05.2015
comment
И да, я знаю, что вопрос 2 сложный, но я подумал, что, может быть, кто-то знает некоторые приемы с байесовской статистикой. Я думал о том, чтобы выполнить как можно больше различных интегрирований и использовать медианное значение, но это имеет смысл только в том случае, если остатки имеют нормальное распределение и знать, что мне нужно найти надежный ответ на вопрос 1. - person Mathias; 13.05.2015