MATLAB: Isolate Elements in a Vector

vectors

Suppose I have two sets of data:
ab =
0.3570
0.3560
0.3750
0.5150
0.3570
0.3560
0.3750
0.5150
and
ab =
0.4100
0.2500
0.3340
0.5500
0.6250
0.7760
0.3330
0.4100
0.2500
0.3340
0.5500
0.6250
0.7760
0.3330
0.4100
0.2500
0.3340
0.5500
0.6250
0.7760
0.3330
0.4100
0.2500
0.3340
0.5500
0.6250
0.7760
0.3330
0
As you see with the set ab, the numbers repeat itself:
0.3570
0.3560
0.3750
0.5150
and with second set ab:
0.4100
0.2500
0.3340
0.5500
0.6250
0.7760
0.3330
But also note that there is a zero at the end of the second set.
Now if I wanted to construct a vector using one set of data, I would use the following command for the second set to remove that zero
reshape(ab(1:end-1), [], 4);
This would read the vector from the first element to the last, being 0 and remove it with end-1. This also assumes that there are 4 runs.
Obviously this wouldn't work for the first set.
What would I need to change for this to read both sets and to prompt the user how many runs of data there are?

Best Answer

If you have just these two cases
if ab(end)==0
ab(end)=[]
end
out=reshape(ab,4,[])