Subscripted assignment dimension mismatch.

1 view (last 30 days)
i have a the following code
clear all
clc
file=input('file name ','s');
fid = fopen(file);
for i = 1:44
for j = 1:2
ff(i,j) = fscanf(fid,'%e %e',2);
end
end
ff
and that results
Subscripted assignment dimension mismatch.
Error in proyectosuelos (line 12)
ff(i,j) = fscanf(fid,'%e %e',2);
Tanks
[EDITED, Jan, please format your code properly - Thanks]

Answers (2)

Azzi Abdelmalek
Azzi Abdelmalek on 19 Sep 2013
Maybe you should use cell array ff{i,j} instead of ff(i,j)

Jan
Jan on 19 Sep 2013
ff(i,j) = fscanf(fid,'%e %e',2);
Here "ff(i,j)" is a scalar, while "fscanf(fid,'%e %e',2)" reads two values. For obvious reasons, Matlab cannot store two values inside one element. So perhaps you want:
% clear all % No, do not clear everything!
% clc % Is this useful?!
file = uigetfile('*.*, 'file name ');
fid = fopen(file);
ff = zeros(44, 2, 2);
for i = 1:44
for j = 1:2
ff(i,j, :) = fscanf(fid,'%e %e', [1, 2]);
end
end

Community Treasure Hunt

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

Start Hunting!