Spec-Zone.ru › NumPy 1.12

numpy.correlate

numpy.correlate(a, v, mode='valid') [source]

Взаимная корреляция двух одномерных последовательностей.

Эта функция вычисляет корреляцию, как это обычно определяется в текстах по обработке сигналов:

c_{av}[k] = sum_n a[n+k] * conj(v[n])

где последовательности a и v дополняются нулями по мере необходимости, а conj — это сопряжение.

Параметры:

a, v : array_like

Входные последовательности.

mode : {‘valid’, ‘same’, ‘full’}, optional

Обратитесь к convolve документации. Обратите внимание, что значение по умолчанию — ‘valid’, в отличие от convolve, которое использует ‘full’.

old_behavior : bool

old_behavior было удалено в NumPy 1.10. Если вам нужно старое поведение, используйте multiarray.correlate.

Возвращает:

out : ndarray

Дискретная взаимная корреляция a и v.

См. также

convolve
Дискретная линейная свёртка двух одномерных последовательностей.
multiarray.correlate
Старая версия correlate без сопряжения.

Примечания

Вышеприведённое определение корреляции не является единственным, и иногда корреляция может быть определена по-другому. Другое общее определение:

c'_{av}[k] = sum_n a[n] conj(v[n+k])

что связано с c_{av}[k] посредством c'_{av}[k] = c_{av}[-k].

Примеры

>>> np.correlate([1, 2, 3], [0, 1, 0.5])
array([ 3.5])
>>> np.correlate([1, 2, 3], [0, 1, 0.5], "same")
array([ 2. ,  3.5,  3. ])
>>> np.correlate([1, 2, 3], [0, 1, 0.5], "full")
array([ 0.5,  2. ,  3.5,  3. ,  0. ])

Использование комплексных последовательностей:

>>> np.correlate([1+1j, 2, 3-1j], [0, 1, 0.5j], 'full')
array([ 0.5-0.5j,  1.0+0.j ,  1.5-1.5j,  3.0-1.j ,  0.0+0.j ])

Обратите внимание, что при изменении местами двух входных последовательностей вы получаете инвертированное во времени, комплексно сопряжённое значение, т. е. c_{va}[k] = c^{*}_{av}[-k]:

>>> np.correlate([0, 1, 0.5j], [1+1j, 2, 3-1j], 'full')
array([ 0.0+0.j ,  3.0+1.j ,  1.5+1.5j,  1.0+0.j ,  0.5+0.5j])

© 2008–2017 NumPy Developers
Licensed under the NumPy License.
https://docs.scipy.org/doc/numpy-1.12.0/reference/generated/numpy.correlate.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API