Python ValueError:在将数组添加到另一个形状时,无法将输入数组从形状(28)广播到形状(28,0)

Python ValueError:在将数组添加到另一个形状时,无法将输入数组从形状(28)广播到形状(28,0),python,numpy,Python,Numpy,我试图将一个numpy数组添加到另一个numpy数组,但出现以下错误: ValueError: could not broadcast input array from shape (28) into shape (28,0) 这是我的代码: sample = np.fabs(sample - avg) counter = np.arange(1,len(sample)+1) np.append(sample, counter, axis=1) 如何修复此问题?这表明具有形状(28,0)的数

我试图将一个numpy数组添加到另一个numpy数组,但出现以下错误:

ValueError: could not broadcast input array from shape (28) into shape (28,0)
这是我的代码:

sample = np.fabs(sample - avg)
counter = np.arange(1,len(sample)+1)
np.append(sample, counter, axis=1)

如何修复此问题?

这表明具有形状(28,0)的数组实际上是空的,这意味着您可能需要处理生成sample和avg的上游处理,并验证这些对象的内容。我可以用以下方法复制这一点:

import numpy as np
from numpy import random
a = random.rand(28)
b = random.random((28,0))
print(a.shape, b.shape)
(28,)(28,0)

打印(a+b)
---------------------------------------------------------------------------
ValueError回溯(最近一次调用上次)
在()
5打印(a形、b形)
6.
---->7打印(a+b)
8.
9印刷品(b)
ValueError:操作数无法与形状(28,)(28,0)一起广播
印刷品(b)

[]

首先,请删除
as_matrix
方法。但问题出在哪里?在
样本平均值中
部分?如果是,那两个变量的来源和形状是什么。?形状
(28,0)
的数组可疑。它是空的。我编辑了我的代码。问题出现在第三行,即将列追加到另一列上。远离
数组。追加
。人们经常滥用它。列表附加更好,或者将其所有缺点连接起来。@hpaulj我该怎么做?
print(a + b)
---------------------------------------------------------------------------
ValueError                                Traceback (most recent call last)
<ipython-input-16-f1c1de818ef8> in <module>()
      5 print(a.shape, b.shape)
      6 
----> 7 print(a + b)
      8 
      9 print(b)

ValueError: operands could not be broadcast together with shapes (28,) (28,0)

print(b)