Trying to set up a matrix, getting error message

This is my current code, every time I attempt to run it I get an error message that says "Index in position 1 exceeds array bounds." How do I fix this?
Matrix = fscanf(fid, '%f', [3, 4]);
Unrecognized function or variable 'fid'.
w = Matrix(1,:);
t = Matrix(2, : );
g = Matrix(3, : );

1 Comment

% fid = 0;
% Matrix = fscanf(fid,'%f', [3, 4])
Matrix = [3, 4] % if this is your input Matrix read
Matrix = 1×2
3 4
size([3 4])
ans = 1×2
1 2
w = Matrix(1,:);
t = Matrix(2, : ); % here is the error where you try to access non-existent row
Index in position 1 exceeds array bounds. Index must not exceed 1.
g = Matrix(3, : );
you try to access non-existent row for the Matrix vector whose size consists of only 1 row

Sign in to comment.

 Accepted Answer

Check the size of Matrix.
You may be able to use a different function to read your file, e.g., readmatrix instead of fopen/fscanf/fclose.

1 Comment

turns out my .txt file was messed up. Thanks anyway though.

Sign in to comment.

More Answers (1)

You have accidentally created a variable named fscanf

Categories

Products

Release

R2023b

Tags

Asked:

on 2 Feb 2024

Commented:

on 2 Feb 2024

Community Treasure Hunt

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

Start Hunting!