title: initialize a numpy array
body: <p>Is there way to initialize a numpy array of a shape and add to it? I will explain what I need with a list example. If I want to create a list of objects generated in a loop, I can do:</p>
  
  <pre><code>a = []
  for i in range(5):
      a.append(i)
  </code></pre>
  
  <p>I want to do something similar with a numpy array. I know about vstack, concatenate etc. However, it seems these require two numpy arrays as inputs. What I need is:</p>
  
  <pre><code>big_array # Initially empty. This is where I don't know what to specify
  for i in range(5):
      array i of shape = (2,4) created.
      add to big_array
  </code></pre>
  
  <p>The <code>big_array</code> should have a shape <code>(10,4)</code>. How to do this?</p>
  
  <hr>
  
  <p><strong>EDIT:</strong></p>
  
  <p>I want to add the following clarification. I am aware that I can define <code>big_array = numpy.zeros((10,4))</code> and then fill it up. However, this requires specifying the size of big_array in advance. I know the size in this case, but what if I do not? When we use the <code>.append</code> function for extending the list in python, we don't need to know its final size in advance. I am wondering if something similar exists for creating a bigger array from smaller arrays, starting with an empty array.</p>