dlmread中过时的语法警告

时间:2018-10-30 17:18:53

标签: matlab

我对Matlab完全陌生,因此我一直在尝试各种IO功能,以了解它们如何工作。在这里,我尝试用制表符分隔的电子表格构造一个矩阵:

%Matrix test
M = dlmread('MyFile.txt', '\t', 1);
disp(M);

输出:

>> MatrixTest
Warning: Obsolete syntax. C must be specified with R. 
> In dlmread (line 91)
  In MatrixTest (line 2) 
    0.3800    0.2900    0.0400    0.2900  -22.2000
    0.4600    0.4500    0.0200    0.0700  -22.2500
    0.4900    0.1500    0.0200    0.3400  -66.7700
    0.1000    0.8100    0.0200    0.0700  -81.7500
    0.1200    0.5700    0.0500    0.2600  -49.5000
    0.3000    0.6000    0.0300    0.0700  -57.4700
    0.4200    0.0900    0.0100    0.4800  -56.3500
    0.2600    0.2800    0.2900    0.1700  -79.7900
    0.4800    0.0300    0.4000    0.0900  -76.8500
    0.2600    0.0100    0.1400    0.5900  -28.6600
    0.2900    0.5000    0.1900    0.0200  -21.5700
    0.1400    0.8300    0.0200    0.0100  -31.2700
    0.0200    0.4700    0.1300    0.3800  -93.1500
    0.0400    0.5000    0.3500    0.1100  -16.9500
    0.1100    0.0100    0.1300    0.7500  -11.0500
    0.2000    0.6700    0.1200    0.0100  -44.7900
    0.3900    0.3600    0.1700    0.0800  -18.7300
    0.1500    0.3300    0.0600    0.4600  -48.4500
    0.3900    0.0800    0.2300    0.3000  -60.6100
    0.3400    0.3600    0.2200    0.0800  -33.0800
    0.1400    0.7800    0.0200    0.0600  -60.5000
    0.3600    0.6300    0.0100         0  -46.6700
    0.1600    0.4800    0.0700    0.2900  -38.2800

代码按预期工作,但是显然我使用了过时的语法(或者问题出在dlmread函数上?)。无论如何,执行此相同操作的更合适方法是什么?

谢谢。

1 个答案:

答案 0 :(得分:0)

尝试使用此

%Matrix test  
M = dlmread('MyFile.txt', '\t', 1, 0);  
disp(M); 

此处,用于忽略第一列-使用:

%Matrix test  
M = dlmread('MyFile.txt', '\t', 1, 1);  
disp(M); 

谢谢