title: Is there a way to write a python function that will create 'N' arrays? (see body)
body: <p>I have an numpy array that is shape 20, 3. (So 20 3 by 1 arrays. Correct me if I'm wrong, I am still pretty new to python)</p>
  <p>I need to separate it into 3 arrays of shape 20,1 where the first array is 20 elements that are the 0th element of each 3 by 1 array. Second array is also 20 elements that are the 1st element of each 3 by 1 array, etc.</p>
  <p>I am not sure if I need to write a function for this. Here is what I have tried:
  Essentially I'm trying to create an array of 3 20 by 1 arrays that I can later index to get the separate 20 by 1 arrays.</p>
  <pre><code>a = np.load() #loads file
  num=20 #the num is if I need to change array size
  num_2=3
  for j in range(0,num):
      for l in range(0,num_2):
          array_elements = np.zeros(3)
          array_elements[l] = a[j:][l]
          
  </code></pre>
  <p>This gives the following error:
  '''
  ValueError: setting an array element with a sequence
  '''
  I have also tried making it a dictionary and making the dictionary values lists that are appended, but it only gives the first or last value of the 20 that I need.</p>