python - 动态向数组添加新行

标签 python arrays numpy

我想初始化一个空列表并继续向其中添加新行。例如。 我的数组=[] 现在,在每次迭代中,我想添加在迭代期间计算的新行。例如

for i in range(5):
     calc=[i,i+1,i+4,i+5]

计算后我想将此行添加到 myarray 中。因此,在第一次迭代之后 myarray 将是 1X4,在第二次迭代之后它将是 2X4 等等。我尝试了 numpy.concatenate。它只是添加到同一行,即我得到 1X4,然后是 1X8。我也尝试了 vstack,但由于 myarray 最初是 [] 它给出错误“除了串联轴之外的所有输入数组维度必须完全匹配”

最佳答案

看起来您需要一个多维数组

calc = [[0, 1, 4, 5]]
for i in range(1, 5):
    calc.append([i, i+1, i+4, i+5])

将产生以下数组

calc = [[0, 1, 4, 5], [1, 2, 5, 6], [2, 3, 6, 7], [3, 4, 7, 8], [4, 5, 8, 9]]

要访问 calc 的各种元素,您可以按如下方式进行处理

calc[0] returns [0,1,5,6]
calc[1] returns [1,2,5,6]

关于python - 动态向数组添加新行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31385478/

相关文章:

python - 如何使用 gridspec 修改子图之间的宽度

python - 检查列表是否具有完全重复的元素(即没有唯一元素)

c++ - 带 get 的数据结构,返回一个 constexpr (C++)

python - 将列值更改为 Pandas 中的列标题

python - 如何 `pip install` 具有 Git 依赖项的包?

python - 这个 Python 函数中的最后一行代表什么?

c++ - 只是想知道此错误消息的真正含义!

arrays - 将值插入 Ruby 中的每个其他数组索引

python - 检查 numpy 数组是否具有正常形状

python - 如何有效地将 NumPy View 列表与相应的权重相乘?