【问题标题】:load files from two different folders in matlab从matlab中的两个不同文件夹加载文件
【发布时间】:2013-06-11 05:40:48
【问题描述】:

您好,我是 matlab 的新手。 我的笔记本电脑中有两个不同的文件夹,每个文件夹包含大约 400 个不同的文件。我想加载所有这些文件(第一个文件夹中的 400 个和第二个文件夹中的 400 个),我尝试过这样但不起作用:

folder1=('E:\results\1\'); 
folder2=('E:\results\2\'); 
data=load([folder1,'*.m']);
data1=load([folder2,'*.m']);

然后我想从文件夹 1 中取出第一个文件并从文件夹 1 中的第一个文件中减去并将其保存在新文件夹中。并对所有其他文件执行此操作...等 哪位高手可以给我任何建议!! 提前致谢。

【问题讨论】:

    标签: matlab plot matlab-load


    【解决方案1】:

    很确定load 一次只需要一个文件。试试这样的简单变体:

    folder1=('E:\results\1\'); 
    folder2=('E:\results\2\');
    files1 = dir( [folder1,'*.m'] );
    files2 = dir( [folder2,'*.m'] );
    
    data = cell(length(files1),1);  % I don't know what's in the mat files, but let's start with a cell array
    data1 = cell(length(files2),1);
    for ii=1:length(files1)
      data{ii} = load(fullfile(folder1,files1(ii).name));
    end
    for ii=1:length(files2)
      data1{ii} = load(fullfile(folder2,files2(ii).name));
    end
    

    还有其他更单一的方式,但这是一种相当迂腐的方式。

    【讨论】:

    • 嗨,非常感谢。但我认为单元命令对我不起作用。在这些文件中,我有一个包含 3 列和 500 行的矩阵。矩阵中的每个像素都包含数字..我的情况还有其他更好的命令
    • @user2486405,取决于您希望如何使用数据。在任何课程中,元胞数组都是一个 super 容器,可以存储几乎任何东西,包括 500x3 矩阵,因此data 是一个元胞数组,每个条目都包含一个 500x3 矩阵。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-12-31
    • 2016-05-03
    • 2018-10-21
    • 1970-01-01
    相关资源
    最近更新 更多