我正在尝试将4x1行数据附加到python中的矩阵上。矩阵初始化为空,然后在循环的每次迭代期间增长一行,直到过程结束。我不知道矩阵将被追加多少次,因此不幸的是,将数组初始化为预定的最终大小不是一种选择。我用np.r_找到的问题是附加的矩阵和列表需要大小相同,这种情况很少见。下面是我一直在使用的伪代码。
Dispose
有没有人知道如何找到这个问题的解决方案?
答案 0 :(得分:0)
正如@hpaulj建议您应该使用列表列表,然后在最后转换为NumPy矩阵。这比使用np.r_或其他NumPy方法构建矩阵 at least 2x faster
import numpy as np
dataMatrix = []
def collectData():
return 4x1 list
while receivingData:
dataMatrix.append(collectData())
dataMatrix = np.array(dataMatrix)
作为旁注,np.r_唯一的要求是矩阵的第一个维度等于数组的第一个维度(在您的情况下是唯一的维度)。当你应该使用np.c _
时,也许你使用了np.r_