如何将文本文件中的逗号分隔的双精度读入 MATLAB?
How do I read comma separated doubles from text file into MATLAB?
我有一个名为 Output.txt 的文本文件,如下所示:
0.000000,0.550147,0.884956
1.000000,0.532486,0.847458
2.000000,0.501333,0.800000
3.000000,0.466418,0.746269
4.000000,0.409492,0.662252
5.000000,0.327257,0.520833
6.000000,0.267376,0.425532
7.000000,0.188427,0.296736
8.000000,0.115824,0.180505
9.000000,0.062768,0.099108
我需要将逗号分隔的三个值作为 3 个不同的向量读入 MATLAB。它们可以被称为任何名称,但 C1
、C2
和 C3
可以工作。
C1
将包含 [0.000000,1.000000,2.000000, ...]
,C2
将包含 [0.550147,0.532486,...]
,而 C3
将包含第三列 [0.884956,0.847458,...]
中的值。
我尝试使用以下方法,但无法正常工作:
File = 'Output.txt';
f = fopen(File, 'r');
C = textscan(f, '%f%f%f', 'Delimiter', ',');
fclose(f);
这给了我一个 1x3 单元格数组 C
但 C
中的每个单元格都是 1x100 并且不包含正确的数字。
你有一个 Comma Separated Value
文件,所以你可以简单地使用 csvread
来读入你的矩阵:
C = csvread('Output.txt');
其中 C
现在是一个包含所有值的矩阵,您当然可以通过列和行对其进行索引。我建议不要创建列向量,而是使用 C(:,1)
作为第一列等
我有一个名为 Output.txt 的文本文件,如下所示:
0.000000,0.550147,0.884956
1.000000,0.532486,0.847458
2.000000,0.501333,0.800000
3.000000,0.466418,0.746269
4.000000,0.409492,0.662252
5.000000,0.327257,0.520833
6.000000,0.267376,0.425532
7.000000,0.188427,0.296736
8.000000,0.115824,0.180505
9.000000,0.062768,0.099108
我需要将逗号分隔的三个值作为 3 个不同的向量读入 MATLAB。它们可以被称为任何名称,但 C1
、C2
和 C3
可以工作。
C1
将包含 [0.000000,1.000000,2.000000, ...]
,C2
将包含 [0.550147,0.532486,...]
,而 C3
将包含第三列 [0.884956,0.847458,...]
中的值。
我尝试使用以下方法,但无法正常工作:
File = 'Output.txt';
f = fopen(File, 'r');
C = textscan(f, '%f%f%f', 'Delimiter', ',');
fclose(f);
这给了我一个 1x3 单元格数组 C
但 C
中的每个单元格都是 1x100 并且不包含正确的数字。
你有一个 Comma Separated Value
文件,所以你可以简单地使用 csvread
来读入你的矩阵:
C = csvread('Output.txt');
其中 C
现在是一个包含所有值的矩阵,您当然可以通过列和行对其进行索引。我建议不要创建列向量,而是使用 C(:,1)
作为第一列等