<div dir="ltr">Try just calling np.array_split on the full 2D array.  It splits along a particular axis, which is selected using the axis argument of np.array_split.  The axis to split along defaults to the first so the two calls to np.array_split below are exactly equivalent.<br><br><span style="color:rgb(0,0,128)">In [</span><span style="font-weight:600;color:rgb(0,0,128)">16</span><span style="color:rgb(0,0,128)">]:</span> a = np.c_[:10,10:20,20:30]
<p style="margin:0px;text-indent:0px"><br></p><p style="margin:0px;text-indent:0px"><span style="color:rgb(0,0,128)">In [</span><span style="font-weight:600;color:rgb(0,0,128)">17</span><span style="color:rgb(0,0,128)">]:</span> np.array_split(a, [2,5,8])</p>
<p style="margin:0px;text-indent:0px"><span style="color:rgb(139,0,0)">Out[</span><span style="font-weight:600;color:rgb(139,0,0)">17</span><span style="color:rgb(139,0,0)">]:</span> </p>
<p style="margin:0px;text-indent:0px">[array([[ 0, 10, 20],</p>
<p style="margin:0px;text-indent:0px">        [ 1, 11, 21]]), array([[ 2, 12, 22],</p>
<p style="margin:0px;text-indent:0px">        [ 3, 13, 23],</p>
<p style="margin:0px;text-indent:0px">        [ 4, 14, 24]]), array([[ 5, 15, 25],</p>
<p style="margin:0px;text-indent:0px">        [ 6, 16, 26],</p>
<p style="margin:0px;text-indent:0px">        [ 7, 17, 27]]), array([[ 8, 18, 28],</p>
<p style="margin:0px;text-indent:0px">        [ 9, 19, 29]])]</p>
<p style="margin:0px;text-indent:0px"><br></p><p style="margin:0px;text-indent:0px"><span style="color:rgb(0,0,128)">In [</span><span style="font-weight:600;color:rgb(0,0,128)">18</span><span style="color:rgb(0,0,128)">]:</span> np.array_split(a, [2,5,8], 0)</p>
<p style="margin:0px;text-indent:0px"><span style="color:rgb(139,0,0)">Out[</span><span style="font-weight:600;color:rgb(139,0,0)">18</span><span style="color:rgb(139,0,0)">]:</span> </p>
<p style="margin:0px;text-indent:0px">[array([[ 0, 10, 20],</p>
<p style="margin:0px;text-indent:0px">        [ 1, 11, 21]]), array([[ 2, 12, 22],</p>
<p style="margin:0px;text-indent:0px">        [ 3, 13, 23],</p>
<p style="margin:0px;text-indent:0px">        [ 4, 14, 24]]), array([[ 5, 15, 25],</p>
<p style="margin:0px;text-indent:0px">        [ 6, 16, 26],</p>
<p style="margin:0px;text-indent:0px">        [ 7, 17, 27]]), array([[ 8, 18, 28],</p>
<p style="margin:0px;text-indent:0px">        [ 9, 19, 29]])]</p><p style="margin:0px;text-indent:0px"><br></p>
<p style="margin:0px;text-indent:0px"><span style="color:rgb(0,0,128)"></span><span style="color:rgb(0,0,128)">Eric<br></span> </p><br></div><div class="gmail_extra"><br><div class="gmail_quote">On Wed, Mar 23, 2016 at 9:06 AM, Ibrahim EL MEREHBI <span dir="ltr"><<a href="mailto:bobmerhebi@gmail.com" target="_blank">bobmerhebi@gmail.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
  

    
  
  <div text="#000000" bgcolor="#FFFFFF">
    Hello,<br>
    <br>
    I have a multi-diensional array that I would like to split its
    columns.<br>
    <br>
    For example consider,<br>
    <br>
    dat = np.array([np.arange(10),np.arange(10,20), np.arange(20,30)]).T<br>
    
    <pre style="overflow:auto;font-family:monospace;font-size:14px;display:block;padding:0px;margin:0px;line-height:17.0001px;word-break:break-all;word-wrap:break-word;color:rgb(0,0,0);border:0px;border-radius:0px;white-space:pre-wrap;vertical-align:baseline;font-style:normal;font-variant:normal;font-weight:normal;letter-spacing:normal;text-align:left;text-indent:0px;text-transform:none;word-spacing:0px;background-color:rgb(255,255,255)">array([[ 0, 10, 20],
       [ 1, 11, 21],
       [ 2, 12, 22],
       [ 3, 13, 23],
       [ 4, 14, 24],
       [ 5, 15, 25],
       [ 6, 16, 26],
       [ 7, 17, 27],
       [ 8, 18, 28],
       [ 9, 19, 29]])</pre>
    <br>
    I already can split one column at a time:<br>
    <br>
    np.array_split(dat[:,0], [2,5,8])<br>
    
    <pre style="overflow:auto;font-family:monospace;font-size:14px;display:block;padding:0px;margin:0px;line-height:17.0001px;word-break:break-all;word-wrap:break-word;color:rgb(0,0,0);border:0px;border-radius:0px;white-space:pre-wrap;vertical-align:baseline;font-style:normal;font-variant:normal;font-weight:normal;letter-spacing:normal;text-align:left;text-indent:0px;text-transform:none;word-spacing:0px;background-color:rgb(255,255,255)">[array([0, 1]), array([2, 3, 4]), array([5, 6, 7]), array([8, 9])]</pre>
    <br>
    How can I extend this for all columns and (overwrite or) have a new
    multi-dimensional array?<br>
    <pre cols="72">Thank you,
Bob
</pre>
  </div>

<br>_______________________________________________<br>
NumPy-Discussion mailing list<br>
<a href="mailto:NumPy-Discussion@scipy.org">NumPy-Discussion@scipy.org</a><br>
<a href="https://mail.scipy.org/mailman/listinfo/numpy-discussion" rel="noreferrer" target="_blank">https://mail.scipy.org/mailman/listinfo/numpy-discussion</a><br>
<br></blockquote></div><br></div>