2017-07-26 61 views
0

我有成千上萬的文件夾,需要在MatLAB中編程數千個文件。這些都有標題,MatLAB無法讀取。我一直在嘗試使用dlmread函數,但是,它好像只能讀取單個文件。有什麼建議麼?我的文件有兩行標題。在MATLAB中刪除頭文件

我當前的代碼(不工作的整個文件夾):

datadir='D:\Visitor\S\HA\Data\Folder1\2001' 
datadir1=dir(fullfile(datadir, 'ext*.txt')); EXT2001 = dlmread(datadir1,' ', 2, 0); 

謝謝!

+0

我真的不理解你的問題是什麼,你已經指定一排'dlmread'會忽略頭偏移。 – excaza

+0

類似的問題是的,但這個問題沒有被接受的答案... – Eskapp

回答

1

您正在將數據結構從dir傳遞到dlmread。這是行不通的。您必須遍歷由dir返回的文件,並分別將各個文件傳遞給dlmread。你可以存儲輸出數據在cell array,像這樣:

nFiles = numel(datadir1); 
data = cell(1, nFiles); 
for iFile = 1:nFiles 
    filePath = fullfile(datadir1(iFile).folder, datadir1(iFile).name); 
    data{iFile} = dlmread(filePath,' ', 2, 0); 
end 
+0

謝謝!這完美的作品!我upvoted,但它沒有顯示。 –

+0

@ S.Smith:您沒有足夠的[rep](https://stackoverflow.com/help/whats-reputation)來註冊,但是您可以將其標記爲[accepted](https:// stackoverflow。 COM /幫助/接受應答)。 – gnovice

+0

它的工作,但它把我所有的數據放入1x4單元格。我可以單擊單元格中的每個元素並將其展開,但是可以將它解壓縮爲單獨的文件嗎? –