MATLAB: How to extract a vector of values from a spectrum

spectrum vector

I have an optical spectrum that is represented by two vectors: X and Y. In X I have all the values (X1,X2,X3…) and in Y their absolute frequncies (Y1,Y2,Y3…) (namely counts). Let us suppose, for example, that X1 has 4 counts (Y1=4) and X2 has 5 counts (Y2=5) and so on and I want to exctract the following vector:
X1 X1 X1 X1 X2 X2 X2 X2 X2 …..
How can it be done? thank you!

Best Answer

I understand that you would like to extract a vector with X values repeated as per the count in Y. The following code would help you do the same.
c=[];
for i=1:length(x)
c=[c;repmat(x(i),y(i),1)];
end