|
From: | Bård Skaflestad |
Subject: | RE: How to vectorize this code? |
Date: | Wed, 11 Apr 2018 12:35:39 +0000 |
It's been a while since I checked so I don't know if Octave has adopted the 'repelem' function from MATLAB. If it has, then this task is accomplished by ind = repelem(1:numel(DIV), reshape(DIV, 1, []));
From: Help-octave [mailto:help-octave-bounces+address@hidden
On Behalf Of Brian Kaczynski Hello Octavians! I have a long vector DIV (containing about 150,000 elements) which contains integers only from 32 to 64, inclusive. I want to create a longer vector containing 1's repeated DIV(1) times, 2's repeated DIV(2) times, 3's repeated DIV(3) times,
etc. This is how I'm doing it now: ind = []; for j = 1:length(DIV) ind = [ind ; j*ones(DIV(j),1)]; end I know there are some experts at vectorizing for-loop code like this. Who can give this a shot? Thanks! -Brian |
[Prev in Thread] | Current Thread | [Next in Thread] |