python correlate_Python numpy.correlate函数方法的使用

numpy.correlate 函数用于计算两个一维序列的互相关,它支持'valid'、'same'、'full'三种模式。默认情况下,该函数在'valid'模式下工作,不填充零。示例展示了不同模式下的计算结果,包括与复数序列的互相关。该函数在信号处理和数据分析中有着广泛应用。
摘要由CSDN通过智能技术生成

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’}, 可选

请参考convolve文档字符串。请注意,默认值为'valid',与convolve使用'full'的不同。

old_behavior:bool

在NumPy 1.10中删除了old_behavior。如果您需要旧的行为,请使用multiarray.correlate。

返回值:out:ndarray

a和v的离散互相关。

Notes

上面相关性的定义不是唯一的,有时相关性可以不同地定义。另一个常见的定义是: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])

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值