Python中短一维向量(2个列表)的快速卷积

2024-04-23 20:11:50 发布

您现在位置:Python中文网/ 问答频道 /正文

我想用Python(或者用带有Python接口的C语言)实现两个非常短的向量(1d)的最快卷积。卷积结果只报告第一个向量的非零值。在

示例:

main_vector = [0,0,0,1,1,1,0,0,0] # usually < 250 elements long
mask = [1,1,1]                    # usually 31 elements long
result = [0,0,0,2,3,2,0,0,0]      # result of convolution

结果是主_向量掩码的卷积,但结果仅报告主_向量的非零值。在

我目前最快的解决方案是:

^{pr2}$

在Cython或其他接口中有没有更快的方法来实现这一点?任何想法都非常感谢。我用这个来做生物信息学中的基序搜索,我执行了很多这样的卷积。在


Tags: of示例main报告maskelementsresult解决方案