Filling blanks with zeros

1 view (last 30 days)
Shawn Imming
Shawn Imming on 7 Nov 2016
Commented: Shawn Imming on 7 Nov 2016
Hello, I have a vector of 1175 values. The vector begins with the following values: 1983, 2004, 2054, 2094, 3107, 3137 etc. Is it possible to fill in the blanks between the values with zeros? So it would be 1982 times 0, than the value 1983, 21 times 0, than the value 2004, 50 times 0, than the value 2054 and so on...
Thanks in advance! Shawn Imming

Accepted Answer

Walter Roberson
Walter Roberson on 7 Nov 2016
maxval = max(YourVector);
NewVector = zeros(1, maxval);
NewVector(YourVector) = YourVector;

More Answers (1)

KSSV
KSSV on 7 Nov 2016
Edited: KSSV on 7 Nov 2016
clc; clear all ;
yrs = [ 1983, 2004, 2054, 2094, 3107, 3137];
data = rand(1,length(yrs)) ; % respective values
[yrs' data']
y = min(yrs):max(yrs) ;
datai = zeros(size(y)) ;
datai(ismember(y,yrs)) = data ;
[y' datai']

Categories

Find more on MATLAB in Help Center and File Exchange

Tags

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!