MATLAB: How to create vectors in the for loop

for loopvectors

I have a hard time understanding the logic behind the for loops, so here is the question:
I have a vector:A = [5 8 1 4 9 2];
for each value of A, I need to create other vectors in the format B = linspace(-A,A,47), so the output looks as follows:
B(1) = -5 -4.78 -4.56 ... 4.56 4.78 5B(2) = -8 -7.65 - 7.3 ... 7.3 7.65 8...B(6) = -2 -1.91 -1.83 ... 1.83 1.91 2
Thank you!

B = arrayfun(@(x) linspace(-x,x,47),A,'uni',false); % B is a cell array of vectors
len = length(A);B   = cell(len,1);for index = 1 : len    B{index} = linspace(-A(index),A(index),47);end