了解matlab中的importdata命令

时间:2014-07-13 11:12:59

标签: matlab import

让我们考虑以下数据

SunDay  MonDay  TuesDay  WednesDay  ThursDay  FriDay  SatureDay
95.01   76.21   61.54    40.57       55.79    70.28   81.53
73.11   45.65   79.19    93.55       75.29    69.87   74.68
60.68   41.85   92.18    91.69       81.32    90.38   74.51
48.60   82.14   73.82    41.03       0.99     67.22   93.18
89.13   44.47   57.63    89.36       13.89    19.88   46.60

让我们考虑以下代码

filename = 'weeklydata.txt';
delimiterIn = ' ';
headerlinesIn = 1;
A = importdata(filename,delimiterIn,headerlinesIn);
% View data
for k = [1:7]
   disp(A.colheaders{1, k})
   disp(A.data(:, k))
   disp(' ')
end

我有几个与此代码相关的问题,

headerlinesIn = 1;和disp(A.colheaders{1, k})呢? for k=[1:7]从星期日到星期六,但这两行我不明白,请帮我澄清一下

1 个答案:

答案 0 :(得分:3)

headerlinesIn = 1表示importdata函数,开头有一行要跳过,不包含数据。它存储在A.colheaders中,而您的实际数据存储在A.data中。

使用disp(A.colheaders{1, k}),您现在可以访问并显示此列标题,第一个是k=1。 使用A.data(:, k),您现在可以访问并显示第k列的相应数据。

所以你的循环基本上首先打印每列的标题,然后是该列的数据,最后是空行。然后它跳转到下一列。


关于评论: A.colheaders包含一个包含1行和7列字符串的单元格数组。因此A.colheaders{1, k}为您提供第一行和第k列的字符串。此字符串只显示disp(...)