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 件のコメント

VBBV
VBBV 2024 年 2 月 2 日
% 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

サインインしてコメントする。

 採用された回答

Voss
Voss 2024 年 2 月 2 日

0 投票

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 件のコメント

TheSaint
TheSaint 2024 年 2 月 2 日
turns out my .txt file was messed up. Thanks anyway though.

サインインしてコメントする。

その他の回答 (1 件)

Walter Roberson
Walter Roberson 2024 年 2 月 2 日

0 投票

You have accidentally created a variable named fscanf

カテゴリ

ヘルプ センター および File ExchangeMatrix Indexing についてさらに検索

製品

リリース

R2023b

タグ

質問済み:

2024 年 2 月 2 日

コメント済み:

2024 年 2 月 2 日

Community Treasure Hunt

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

Start Hunting!

Translated by