我在文件中有以下数据。
1 3 5
2 6 8
10 12 14
16 18 20
我想用4 * 3维度在矩阵中读取它。目前我正在通过以下代码读取此矩阵,假设数据存储在名为" A.txt"的文件中。
A=textread('A.txt');
但是这段代码的问题是,如果文件最后有空格,MATLAB将该输入视为零。例如,如果文件" A.txt"在数据之后有一个空格,通过这段代码,MATLAB输入如下:
1 3 5
2 6 8
10 12 14
16 18 20 0
所以我想将矩阵作为row * col语法读取。你能帮我么 ?
答案 0 :(得分:1)
一个选项可能是将空白空间捕获为NaN,并在读取文件后删除NaN:
A = textread(' A.txt','',' emptyvalue',NaN)
A =
1 3 5 NaN
2 6 8 NaN
10 12 14 NaN
16 18 20 NaN
A = A(:,任何(~isnan(A)))
A =
1 3 5
2 6 8
10 12 14
16 18 20