MATLAB中批量導入.mat文件(每個文件多變量)


一、新建MATLAB script(.m文件):readall_mat.m

二、代碼如下:

function data = readall_mat(path)

% READALL_MAT 讀取所有文件

% DATA = READALL_MAT(PATH)讀取路徑PATH下的所有mat文件中的數據賦給data

% mat文件中含有多個數據項

% 輸出cell格式以免各數據項長度不同

% 輸出data后若要使用data中的內容請使用data{index}訪問

%

% 原始版本:V1.0 作者:賈鄭磊 時間:2018.03.05

A = dir(fullfile(path,'*.mat'));

% 讀取后A的格式為

% name -- filename

% date -- modification date

% bytes -- number of bytes allocated to the file

% isdir -- 1 if name is a directory and 0 if not

% ???--都顯示為7.3702e+05標識

A = struct2cell(A);

num = size(A);

for k =0:num(2)-1

x(k+1) = A(num(1)*k+1);

end

m = 1;

for k = 1:num(2)

newpath = strcat(path,'\',x(k));

temp = load(char(newpath));

temp = struct2cell(temp);

num2 = size(temp);

for l = 1:num2(1)

data{m} = temp{l};

m = m+1;

end

end

% [EOF] readall_mat.m

三、調試過程用到的關鍵詞:

1.dbstop in readall_mat at 35(或者手動添加):加斷點

2.data = readall_mat('E\mydata');:運行script

3.dbcont:調試至下一斷點

4.變量名:查看當前變量內容

四、運行結果:

將文件路徑下的多.mat文件的多變量按文件順序導入至data中

五、其他輔助操作

1.執行.m文件:在命令窗口輸入函數名(參數);

2.中斷執行中的.m文件:在命令窗口Ctrl+C


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM