isolate separate portions of a ASCII/TEXT FILE which have results for different time stamps

2 ビュー (過去 30 日間)
i have an ascii file which can be read as text file in matlab
this file contains a number of columns (say 10 or 11) with different names(headers given in the file.
these columns are produced after different time intervals.
so basically, i have a different set of results in different separate sections of the file
What i WANT?? : I want to write these sections into separate files and read each of these columns in order to plot graphs etc.
plz help me guys
thanks in advance
  2 件のコメント
Walter Roberson
Walter Roberson 2019 年 8 月 28 日
regexp() to delete the first line. Then regexp() 'ZONE', 'split' . After that you can textscan() each block
shadman khan
shadman khan 2019 年 9 月 22 日
I tried this code. But not getting the result.
fileID = fopen('Plot_Copy','r');
temp2 = regexp(fileread('Plot_Copy'), 'ZONE', 'split');
C = textscan(fileID,'%f',34);
fclose(fileID);
Can you please help me for using textscan?

サインインしてコメントする。

採用された回答

Walter Roberson
Walter Roberson 2019 年 9 月 22 日
filename = 'Plot_Data_Elem.txt';
fileblocks = regexp(fileread(filename), 'ZONE', 'split');
nblocks = length(fileblocks);
vstr = regexprep(fileblocks{1}, 'Variables\s*=\s*', '', 'once');
vstr = regexprep(vstr, '\s*$', '', 'once'); %in case of trailing whitespace
vars = regexp(vstr, '\s+', 'split');
nvars = length(vars);
fmt = repmat('%f', 1, nvars);
C = cell(nblocks-1,1);
for K = 2 : nblocks
C{K-1} = array2table(cell2mat(textscan(fileblocks{K}, fmt, 'HeaderLines', 1, 'CollectOutput', true)), 'VariableNames', vars);
end
With that example file, this gives an 8 x 1 cell array, each entry of which is a 12 x 16 table object with each column labeled according to the variables mentioned in the first line of the input file.
  1 件のコメント
shadman khan
shadman khan 2019 年 9 月 25 日
my goodness
this couldn't have been done in a better way
all i need o now, irs to store eah of this 12x16 table object into a different file and i am done...
thanks Robert

サインインしてコメントする。

その他の回答 (0 件)

カテゴリ

Help Center および File ExchangeText Files についてさらに検索

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by