[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Filling an array
- Subject: Filling an array
- From: "Pavel A. Romashkin" <pavel.romashkin(at)noaa.gov>
- Date: Wed, 17 Jan 2001 18:06:32 -0700
- Newsgroups: comp.lang.idl-pvwave
- Organization: NOAA-CMDL-CIRES
- Xref: news.doit.wisc.edu comp.lang.idl-pvwave:23036
If I have
a = findgen(10)
b = fix(100* randomu(10, 10))
; N_elements(a) is equal to n_elements(b)
c = findgen(total(b))
how can I fill C with values from A using B as a running index, so that
c[0 : b[0]-1] = a[0]
c[b[0] : b[0]+b[1]-1] = a[1]
etc, without looping through "n_elements(b)-1" iterations?
I have a fast solution with a loop and indexing using total(/cumulative)
and a very slow one with loop and replicate, but I can't come up with a
loop-free one.
Thank you,
Pavel