将多个文本文件导入Matlab

时间:2014-10-10 23:10:01

标签: matlab import

我需要在Matlab中导入一些文本文件作为矩阵。有人可以帮我代码吗?这是我的文本文件名。

elist_S06n1.txt
elist_S06n2.txt
elist_S06n3.txt
elist_S06n4.txt
elist_S07n1.txt
elist_S07n2.txt
elist_S07n3.txt
elist_S07n4.txt
.
.
.
elist_S27n5.txt

所以,直到elist_S09n1.tx n从1到4,然后是1到5。

提前谢谢。

1 个答案:

答案 0 :(得分:0)

感谢您的更新,以便我们查看到目前为止您已尝试过的内容。

在我看来,您在生成正确的文件名时遇到了困难。您可以使用两个循环,而不是循环遍历单元格数组索引,一个从6到27,另一个从1到4或5.基于这些值,您可以轻松生成所需的文件名(请注意前导零!)。在循环中,您可以跟踪生成的单元格数组的索引。

顺便说一句,如果我计算文件数量,我总共得到18 * 5 + 4 * 4 = 106而不是95.

代码:

numfiles = (27-9)*5 + (9-5)*4;
mydata = cell(1, numfiles);

idx = 0; % index for mydata
n = 4;
for k1 = 6:27
    if k1 == 10
        n = 5; % switch to 5 files if k1 reaches 10
    end
    for k2 = 1:n
        idx = idx+1;
        myfilename = sprintf('elist_S%02dn%d.txt', k1, k2);
        mydata{idx} = importdata(myfilename);
    end
end