<html>
  <head>
    <meta content="text/html; charset=UTF-8" http-equiv="Content-Type">
  </head>
  <body bgcolor="#FFFFFF" text="#000000">
    Hi Oleksandr,<br>
    <br>
    Ah, thank you very much - I wasn't even focused on the exception -
    thanks for correcting that too. It's quite weird to me that it has
    to be re-initialized in the loop, like if one can only write to it
    one single time (and not overwrite it) ? That'll probably take some
    time for me to feel comfortable with.<br>
    <br>
    So the mistake I did was only to use q[xyz, x] instead of q[xyz][x]
    - that's very nice - thank you very much for that. This I should be
    able to get familiar with pretty quick, I hope...<br>
    <br>
    Now I can continue on my program - thanks for quick answer(s) !<br>
    <br>
    <br>
    <div class="moz-cite-prefix">On 07/08/2012 06:27 PM, Oleksandr Huziy
      wrote:<br>
    </div>
    <blockquote
cite="mid:CAN3p1sU0GCsp5-n0za2vx-PhA4KYwz3WnsnQS2UnQQmH68wOHA@mail.gmail.com"
      type="cite">Hi newsboost,<br>
      <br>
      sorry, I thought you were asking why you are getting the exception
      : out of bounds.<br>
      You have to reinitialize xyz at the beginning of each time step if
      you want to iterate through the same bodies on each time step.<br>
      In order to get what you need you write as follows test = q[xyz,
      x].<br>
      <br>
      please, see the attached script, which works as follows on my
      system:<br>
      &gt;&gt;&gt; <br>
      type(q) =  &lt;type 'numpy.ndarray'&gt;<br>
      q.shape = (21, 2)<br>
      q = <br>
      [[ 0 21]<br>
       [ 1 22]<br>
       [ 2 23]<br>
       [ 3 24]<br>
       [ 4 25]<br>
       [ 5 26]<br>
       [ 6 27]<br>
       [ 7 28]<br>
       [ 8 29]<br>
       [ 9 30]<br>
       [10 31]<br>
       [11 32]<br>
       [12 33]<br>
       [13 34]<br>
       [14 35]<br>
       [15 36]<br>
       [16 37]<br>
       [17 38]<br>
       [18 39]<br>
       [19 40]<br>
       [20 41]]<br>
      <br>
      <br>
      Step:  0<br>
      ------------------<br>
      Body:  0  --- q [0 1 2] [ 0 ] =<br>
         q[xyz][x] =  [0 1 2]<br>
      Body:  1  --- q [7 8 9] [ 0 ] =<br>
         q[xyz][x] =  [7 8 9]<br>
      Body:  2  --- q [14 15 16] [ 0 ] =<br>
         q[xyz][x] =  [14 15 16]<br>
      <br>
      Step:  1<br>
      ------------------<br>
      Body:  0  --- q [0 1 2] [ 1 ] =<br>
         q[xyz][x] =  [21 22 23]<br>
      Body:  1  --- q [7 8 9] [ 1 ] =<br>
         q[xyz][x] =  [28 29 30]<br>
      Body:  2  --- q [14 15 16] [ 1 ] =<br>
         q[xyz][x] =  [35 36 37]<br>
      &gt;&gt;&gt; <br>
      <br>
      Cheers<br>
      --<br>
      Oleksandr (Sasha) Huziy<br>
      <br>
      <br>
      <br>
       <br>
      <br>
      <div class="gmail_quote">2012/7/8 newsboost <span dir="ltr">&lt;<a
            moz-do-not-send="true" href="mailto:newsboost@gmail.com"
            target="_blank">newsboost@gmail.com</a>&gt;</span><br>
        <blockquote class="gmail_quote" style="margin:0 0 0
          .8ex;border-left:1px #ccc solid;padding-left:1ex">
          <div bgcolor="#FFFFFF" text="#000000"> Uh, sorry - this has
            exactly the same behaviour on my system as before...<br>
            Why should it help to re-init xyz in your opinion in the
            x-loop?<br>
            <br>
            My problem is that I want to process all columns (only two
            here) one at a time and then I want to extract 3 numbers for
            each body. Now I only get 2 numbers... Are you familiar with
            the Matlab notation:<br>
            <br>
            q(xyz, x) ???<br>
            <br>
            That is exactly what I want... 3 numbers from each
            x-column... That's why I tried: q[xyz][x] <br>
            It seems like I'm getting two numbers from the first value
            (of the 3-vector xyz, so the last two numbers in xyz is not
            used) which corresponds to the row... But what I want is 3
            numbers (those from xyz) at the current x-column...<br>
            <br>
            Sorry, I don't think your suggestion worked. Look forward to
            hear other suggestions. Thanks.<br>
            <br>
            <br>
            <div>On 07/08/2012 06:06 PM, newsboost wrote:<br>
            </div>
            <blockquote type="cite"> <b
                style="line-height:normal;text-indent:0px;letter-spacing:normal;text-align:-webkit-auto;font-variant:normal;text-transform:none;font-size:medium;font-style:normal;white-space:normal;font-family:'Times
                New Roman';word-spacing:0px">Oleksandr Huziy</b><span
                style="text-indent:0px;letter-spacing:normal;font-variant:normal;text-align:-webkit-auto;font-style:normal;display:inline!important;font-weight:normal;float:none;line-height:normal;text-transform:none;font-size:medium;white-space:normal;font-family:'Times
                New Roman';word-spacing:0px"><span> </span></span><a
                moz-do-not-send="true"
href="mailto:scipy-user%40scipy.org?Subject=%5BSciPy-User%5D%20noob%20question%20about%20slicing%20/%20extracting%20numbers%0A%20from%20array...&amp;In-Reply-To=4FF90B80.8080105%40gmail.com"
                title="[SciPy-User] noob question about slicing /
                extracting numbers from array..."
                style="font-family:'Times New
Roman';font-style:normal;font-variant:normal;font-weight:normal;letter-spacing:normal;line-height:normal;text-align:-webkit-auto;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px;font-size:medium"
                target="_blank">guziy.sasha@gmail....<span> </span></a><br
                style="text-indent:0px;letter-spacing:normal;font-variant:normal;text-align:-webkit-auto;font-style:normal;font-weight:normal;line-height:normal;text-transform:none;font-size:medium;white-space:normal;font-family:'Times
                New Roman';word-spacing:0px">
              <i
                style="line-height:normal;text-indent:0px;letter-spacing:normal;text-align:-webkit-auto;font-variant:normal;text-transform:none;font-size:medium;white-space:normal;font-family:'Times
                New Roman';font-weight:normal;word-spacing:0px">Sun Jul
                8 09:29:56 CDT 2012</i><span
                style="text-indent:0px;letter-spacing:normal;font-variant:normal;text-align:-webkit-auto;font-style:normal;display:inline!important;font-weight:normal;float:none;line-height:normal;text-transform:none;font-size:medium;white-space:normal;font-family:'Times
                New Roman';word-spacing:0px"></span>
              <hr
                style="text-indent:0px;letter-spacing:normal;font-variant:normal;text-align:-webkit-auto;font-style:normal;font-weight:normal;line-height:normal;text-transform:none;font-size:medium;white-space:normal;font-family:'Times
                New Roman';word-spacing:0px">
              <div>
                <div class="h5">
                  <pre style="line-height:normal;text-indent:0px;letter-spacing:normal;text-align:-webkit-auto;font-variant:normal;text-transform:none;font-style:normal;font-weight:normal;word-spacing:0px">Before the loop over bodies reinitialize xyz:


for x in range(0,timesteps):
     print
     print "Step: ", x
     print "------------------"
     xyz=scipy.array([0,1,2])    #&lt;------ reinit
     for b in range(0,bodies):
         # LCS[b] = q[xyz][x]
         print "Body: ", b, " --- q",xyz,"[",x,"] ="
         test = q[xyz][x]
         print "   q[xyz][x] = ", test
         xyz = xyz + 7 # go to next body

2012/7/8 newsboost &lt;<a moz-do-not-send="true" href="http://mail.scipy.org/mailman/listinfo/scipy-user" target="_blank">newsboost@gmail.com</a>&gt;

&gt;<i> Test program:
</i>&gt;<i> ------------------------------------
</i>&gt;<i> #!/usr/bin/python
</i>&gt;<i>
</i>&gt;<i> #import numpy as np
</i>&gt;<i> import scipy
</i>&gt;<i> import <a moz-do-not-send="true" href="http://scipy.io" target="_blank">scipy.io</a>
</i>&gt;<i> import sys
</i>&gt;<i> import numpy
</i>&gt;<i>
</i>&gt;<i> # load data
</i>&gt;<i> timesteps = 2
</i>&gt;<i> bodies = 3
</i>&gt;<i> q = scipy.arange(0, bodies*7*timesteps).reshape(timesteps,bodies*7).T
</i>&gt;<i> print "type(q) = ", type(q)
</i>&gt;<i> print "q.shape =", q.shape
</i>&gt;<i> print "q = "
</i>&gt;<i> print q
</i>&gt;<i> print
</i>&gt;<i>
</i>&gt;<i> LCS=scipy.zeros((bodies,3))
</i>&gt;<i> xyz=scipy.array([0,1,2])
</i>&gt;<i>
</i>&gt;<i> for x in range(0,timesteps):
</i>&gt;<i>      print
</i>&gt;<i>      print "Step: ", x
</i>&gt;<i>      print "------------------"
</i>&gt;<i>
</i>&gt;<i>      for b in range(0,bodies):
</i>&gt;<i>          # LCS[b] = q[xyz][x]
</i>&gt;<i>          print "Body: ", b, " --- q",xyz,"[",x,"] ="
</i>&gt;<i>          test = q[xyz][x]
</i>&gt;<i>          print "   q[xyz][x] = ", test
</i>&gt;<i>          xyz = xyz + 7 # go to next body
</i>&gt;<i> ------------------------------------
</i>&gt;<i>
</i>&gt;<i> Output:
</i>&gt;<i> ===============
</i>&gt;<i> $ ./test.py
</i>&gt;<i> type(q) =  &lt;type 'numpy.ndarray'&gt;
</i>&gt;<i> q.shape = (21, 2)
</i>&gt;<i> q =
</i>&gt;<i> [[ 0 21]
</i>&gt;<i>   [ 1 22]
</i>&gt;<i>   [ 2 23]
</i>&gt;<i>   [ 3 24]
</i>&gt;<i>   [ 4 25]
</i>&gt;<i>   [ 5 26]
</i>&gt;<i>   [ 6 27]
</i>&gt;<i>   [ 7 28]
</i>&gt;<i>   [ 8 29]
</i>&gt;<i>   [ 9 30]
</i>&gt;<i>   [10 31]
</i>&gt;<i>   [11 32]
</i>&gt;<i>   [12 33]
</i>&gt;<i>   [13 34]
</i>&gt;<i>   [14 35]
</i>&gt;<i>   [15 36]
</i>&gt;<i>   [16 37]
</i>&gt;<i>   [17 38]
</i>&gt;<i>   [18 39]
</i>&gt;<i>   [19 40]
</i>&gt;<i>   [20 41]]
</i>&gt;<i>
</i>&gt;<i>
</i>&gt;<i> Step:  0
</i>&gt;<i> ------------------
</i>&gt;<i> Body:  0  --- q [0 1 2] [ 0 ] =
</i>&gt;<i>     q[xyz][x] =  [ 0 21]
</i>&gt;<i> Body:  1  --- q [7 8 9] [ 0 ] =
</i>&gt;<i>     q[xyz][x] =  [ 7 28]
</i>&gt;<i> Body:  2  --- q [14 15 16] [ 0 ] =
</i>&gt;<i>     q[xyz][x] =  [14 35]
</i>&gt;<i>
</i>&gt;<i> Step:  1
</i>&gt;<i> ------------------
</i>&gt;<i> Body:  0  --- q [21 22 23] [ 1 ] =
</i>&gt;<i> Traceback (most recent call last):
</i>&gt;<i>    File "./test.py", line 30, in &lt;module&gt;
</i>&gt;<i>      test = q[xyz][x]
</i>&gt;<i> IndexError: index (21) out of range (0&lt;=index&lt;20) in dimension 0
</i>&gt;<i> ===============
</i>&gt;<i>
</i>&gt;<i> What I want:
</i>&gt;<i> ************
</i>&gt;<i> Step:  0 (using data from the 1.column)
</i>&gt;<i> ------------------
</i>&gt;<i> Body:  0  --- q [0 1 2] [ 0 ] =
</i>&gt;<i>     q[xyz][x] =  [ 0 1 2]
</i>&gt;<i> Body:  1  --- q [7 8 9] [ 0 ] =
</i>&gt;<i>     q[xyz][x] =  [ 7 8 9]
</i>&gt;<i> Body:  2  --- q [14 15 16] [ 0 ] =
</i>&gt;<i>     q[xyz][x] =  [14 15 16]
</i>&gt;<i>
</i>&gt;<i> Step:  1 (etc. as above, but now using the 2. column)
</i>&gt;<i> ------------------
</i>&gt;<i> Body:  0  --- q [0 1 2] [ 1 ] =
</i>&gt;<i>     q[xyz][x] =  [ 21 22 23]
</i>&gt;<i> Body:  1  --- q [7 8 9] [ 1 ] =
</i>&gt;<i>     q[xyz][x] =  [ 28 29 30]
</i>&gt;<i> etc.
</i>&gt;<i> ************
</i>&gt;<i>
</i>&gt;<i> Hope you understand... It's a noob question, I know... I just cannot
</i>&gt;<i> make it right...
</i>&gt;<i>
</i>&gt;<i> Thanks...
</i>&gt;
</pre>
                </div>
              </div>
            </blockquote>
            <br>
          </div>
        </blockquote>
      </div>
      <br>
    </blockquote>
    <br>
    <br>
  </body>
</html>