ValueError:使用卷积时对象对于所需数组而言太深

发布于 2021-01-29 17:13:59

我正在尝试这样做:

h = [0.2,0.2,0.2,0.2,0.2]

Y = np.convolve(Y, h, "same")

Y 看起来像这样:

屏幕截图

在执行此操作时,出现以下错误:

ValueError: object too deep for desired array

为什么是这样?

我的猜测是,由于某种原因,该convolve函数无法Y视为一维数组。

关注者
0
被浏览
45
1 个回答
  • 面试哥
    面试哥 2021-01-29
    为面试而生,有面试问题,就找面试哥。

    Y你的屏幕截图阵列不是一维数组,它是一个二维数组与300行1列,其指示shape的存在(300, 1)

    要删除额外的维度,您可以将数组切片为Y[:, 0]。要将n维数组通常转换为1D,可以使用np.reshape(a, a.size)

    将2D数组转换为1D的另一个选项是flatten()来自numpy.ndarray模块的函数,不同之处在于它可以复制数组。



知识点
面圈网VIP题库

面圈网VIP题库全新上线,海量真题题库资源。 90大类考试,超10万份考试真题开放下载啦

去下载看看