ValueError: 无法将输入数组从形状 (0) 广播到形状 (96)

问题描述

我有一个形状数组,(4478,)
print(Customer_Reaction_Array.shape) -> (4478,)

我想加载/复制数组 Customer_Reaction_Array 到另一个形状数组 (4478,96)
y=np.zeros([len(Customer_Reaction_Array),Customer_Reaction_Array[0].shape[0]]) print (y.shape) -> (4478,96)

可以将数组加载到索引处,y[455,:] = Customer_Reaction_Array[455] 然后我得到了错误ValueError: Could not broadcast input array from shape (0) into shape (96)

我的代码是:

for i in range(len(Customer_Reaction_Array)):
    y[i,:] = Customer_Reaction_Array[i]

谁能帮我解决这个问题?

解决方法

我不确定我是否完全理解您的问题,但如果您想沿新轴复制现有数组,请使用

initial_dimension = Customer_Reaction_Array.shape
second_dimension = 96

y = np.repeat(Customer_Reaction_Array,second_dimension).reshape(*initial_dimension,second_dimension)

您可以检查 y.T 以获取该数组的转置,以防您需要以这种方式定向