comp.lang.idl-pvwave archive
Messages from Usenet group comp.lang.idl-pvwave, compiled by Paulo Penteado

Home » Public Forums » archive » transfer the specific data in array A to array B
Show: Today's Messages :: Show Polls :: Message Navigator
E-mail to friend 
Return to the default flat view Create a new topic Submit Reply
Re: transfer the specific data in array A to array B [message #88246 is a reply to message #88245] Wed, 02 April 2014 11:46 Go to previous messageGo to previous message
Craig Markwardt is currently offline  Craig Markwardt
Messages: 1869
Registered: November 1996
Senior Member
On Wednesday, April 2, 2014 2:37:55 PM UTC-4, lczha...@gmail.com wrote:
> I got a question when I was trying to save the interested data from array A to a NEW array B.
>
>
>
> j=0
>
> FOR i=0,n-2 do begin
>
>
>
> IF A[i+1]-A[i] gt 80 THEN BEGIN
>
> B[j]=A[i]
>
> j=j+1
>
>
>
> ENDIF
>
>
>
> ENDFOR
>
>
>
> it seems theres something wrong with B[j]=A[i] should I define B as an array first? Or anyone has a better idea? I know it is a stupid question....sorry about that

This is the kind of situation where thinking in IDL vector notation is probably best. The IDL WHERE() function does all the work for you.

;; WHERE(expression) returns indices where expression is true
wh = where(A[1:*]-A[*] GT 80, ct)

;; Use WH as an index list for A[]
if ct GT 0 then B = A[wh]

Done!
Craig
[Message index]
 
Read Message
Read Message
Read Message
Read Message
Read Message
Previous Topic: Solving a non-linear equation
Next Topic: Anyone knows a better local extrema function?

-=] Back to Top [=-
[ Syndicate this forum (XML) ] [ RSS ] [ PDF ]

Current Time: Wed Oct 08 16:04:24 PDT 2025

Total time taken to generate the page: 0.00376 seconds