title: Convert an Array column to Array of Structs in PySpark dataframe
body: <p>I have a Dataframe containing 3 columns</p>
  
  <pre><code>| str1      | array_of_str1        | array_of_str2  |
  +-----------+----------------------+----------------+
  | John      | [Size, Color]        | [M, Black]     |
  | Tom       | [Size, Color]        | [L, White]     |
  | Matteo    | [Size, Color]        | [M, Red]       |
  </code></pre>
  
  <p>I want to add the Array column that contains the 3 columns in a struct type</p>
  
  <pre><code>| str1      | array_of_str1        | array_of_str2  | concat_result                                 |
  +-----------+----------------------+----------------+-----------------------------------------------+
  | John      | [Size, Color]        | [M, Black]     | [[[John, Size , M], [John, Color, Black]]]    |
  | Tom       | [Size, Color]        | [L, White]     | [[[Tom, Size , L], [Tom, Color, White]]]      |
  | Matteo    | [Size, Color]        | [M, Red]       | [[[Matteo, Size , M], [Matteo, Color, Red]]]  |
  </code></pre>