Python 2.7 ValueError:对于所需数组,对象深度太小

Python 2.7 ValueError:对于所需数组,对象深度太小,python-2.7,numpy,Python 2.7,Numpy,我已经搜索并发现这可能是一个关于类型的问题。但我试图使用astype强制数组浮动,但没有成功。这一定是个简单的错误,不过我是个初学者。 关于这个问题:我试图在所有话筒的信号之间形成空间相关矩阵 R_a[k][l] = np.correlate(self.mic_list[k].delayed_signal,self.mic_list[l].delayed_signal) 其中这个类有一个mic_列表,它是一个mic列表,它是另一个拥有这个方法的类 def add_delayed_signal

我已经搜索并发现这可能是一个关于类型的问题。但我试图使用astype强制数组浮动,但没有成功。这一定是个简单的错误,不过我是个初学者。 关于这个问题:我试图在所有话筒的信号之间形成空间相关矩阵

 R_a[k][l] = np.correlate(self.mic_list[k].delayed_signal,self.mic_list[l].delayed_signal)
其中这个类有一个mic_列表,它是一个mic列表,它是另一个拥有这个方法的类

def add_delayed_signal (self, delayed_signal):
    self.delayed_signal = delayed_signal

谢谢你的高级教程。

我猜R\u a是一个二维数组。所做的是计算两个信号之间的距离,并给出一个向量作为结果(不是标量)

你要找的可能是或。这些也是获得所需结果的矢量化方法

例如:

>>> x = np.random.randn(10)
>>> y = np.random.randn(10)
>>> X = np.vstack((x, y))
>>> X
array([[ 1.45841294, -0.16430013, -0.20782822,  0.08979425, -1.38337166,
         0.36488053, -2.57135737,  0.81215918, -0.54081983,  0.30421112],
       [-0.79416305,  1.14511318, -0.4962483 , -0.42647021, -0.59925241,
        -0.45612051, -0.02566026, -1.7668091 , -1.63098627,  0.3761437 ]])
>>> np.cov(X)    
array([[ 1.28563113, -0.20563105],
       [-0.20563105,  0.74178773]])

这就是您要查找的内容吗?

我了解到,在不传递任何额外参数的情况下,它将是一个包含一个元素的数组,因此我尝试使用[0]进行拾取,但仍然存在相同的错误@R.Baptista是的,您可以尝试拾取中间的条目。但是你在浪费大量的计算工作。你试过使用
np.cov
np.corrcoef
吗?我明白了。谢谢你的回答!