I am struggling to create a forloop which reduces the following task into a few lines of code:

` resp1 = squeeze(resp(:,1,:)); resp2 = squeeze(resp(:,2,:)); resp3 = squeeze(resp(:,3,:)); resp4 = squeeze(resp(:,4,:)); resp5 = squeeze(resp(:,5,:)); resp6 = squeeze(resp(:,6,:)); resp7 = squeeze(resp(:,7,:)); imp_level(iter_rep-num_draw_discard,:,:) = resp1; imp_slope(iter_rep-num_draw_discard,:,:) = resp2; imp_curv(iter_rep-num_draw_discard,:,:) = resp3; imp_unrate(iter_rep-num_draw_discard,:,:) = resp4; imp_pce_ch(iter_rep-num_draw_discard,:,:) = resp5; imp_tcu_ch(iter_rep-num_draw_discard,:,:) = resp6; imp_effr(iter_rep-num_draw_discard,:,:) = resp7; `

I've tried the following but got an error

`variables = {'level', 'slope', 'curv', 'unrate', 'pce_ch','tcu_ch', 'effr' }; range = linspace(1,size(variables,2),7); % betas_exog is a (324 x 7) dimension matrix`

for i = 1:size(betas_exog, 2) resp_range(i) = squeeze(resp(:,i,:)); imp_variables{i}(iter_rep-num_draw_discard,:,:) = resp(i) end

I would appreciate your help in fixing the error and creating a workable for loop.

## Best Answer