TypeError:(typecode“l”)根据使用互相关时的强制转换规则“同类”

2024-10-05 20:12:01 发布

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

我正在尝试使用互相关。我正在研究的x和y之间的延迟是1个时间间隔

我有这样一个代码:

x= ([1, 1, 1, 0, 1, 1, 1, 1, 0, 1, 1])
y= ([0, 0, 0, 1, 0, 1, 0, 0, 0, 0, 1]) 
fig, [ax1, ax2] = plt.subplots(2, 1, sharex=True)
ax1.xcorr(x, y, usevlines=True, maxlags=50, normed=True, lw=2)
ax1.grid(True)

ax1.acorr(x, usevlines=True, normed=True, maxlags=50, lw=2)
ax1.grid(True)

ax2.acorr(y, usevlines=True, normed=True, maxlags=50, lw=2)
ax2.grid(True)

plt.show()

但是当我运行代码时,它给了我下面图片中给出的错误。我被困在这里了

https://i.stack.imgur.com/uV2F4.png

有什么想法吗


Tags: 代码true间隔时间figpltgridlw
1条回答
网友
1楼 · 发布于 2024-10-05 20:12:01

您应该将输入转换为np.float类型的numpy数组,如下所示:

x= np.array([1, 1, 1, 0, 1, 1, 1, 1, 0, 1, 1], dtype=np.float) y= np.array([0, 0, 0, 1, 0, 1, 0, 0, 0, 0, 1], dtype=np.float)

此外,您的maxlags太大(请参阅上述修复后出现的下一个错误)

相关问题 更多 >