За заголовком следуют имена строк. Я хочу извлечь числовые данные для времени, площади и объема, а затем сгруппировать их вместе в удобном формате для анализа. Я пробовал textscan, sscanf. У меня нет регулярного выражения, потому что я никогда не использовал его раньше!
ПРИМЕЧАНИЕ.
Matlabsolutions.com предоставляет последнюю Помощь по домашним заданиям MatLab, Помощь по заданию MatLab для студентов, инженеров и исследователей в различных отраслях, таких как ECE, EEE, CSE, Mechanical, Civil со 100% выходом. Код Matlab для BE, B.Tech ,ME,M.Tech, к.т.н. Ученые со 100% конфиденциальностью гарантированы. Получите проекты MATLAB с исходным кодом для обучения и исследований.
Это просто повторяющееся приложение textscan…
fmt1='Time [T] %f'; fmt2='Area [V] %f %f %f Volume [V] %f %f %f'; fid=fopen('Data.txt'); % read first set as has unique number header lines time=cell2mat(textscan(fid, fmt1,'headerlines',10)); % 1st time value data=cell2mat(textscan(fid, fmt2, ... 'headerlines',3,'collectoutput',true,'delimiter','\n')) % and second also has unique number to skip... time=[time; cell2mat(textscan(fid, fmt1,'headerlines',5))]; data=[data; cell2mat(textscan(fid, fmt2, 'headerlines',3, ... 'collectoutput',true,'delimiter','\n'))]; while ~feof(fid) time=[time; cell2mat(textscan(fid, fmt1,'headerlines',7))]; data=[data; cell2mat(textscan(fid, fmt2, 'headerlines',3, ... 'collectoutput',true,'delimiter','\n'))]; end fid=fclose(fid);
В конце у вас будет Nx1 вектор времени и Nx6 объемов и площадей. Вы можете либо объединить время и данные в один массив, либо разделить A и V на основе столбцов в данных; твой выбор.
В командной строке приведенное выше дает мне
СМОТРИТЕ ПОЛНЫЙ ОТВЕТ НАЖМИТЕ НА ССЫЛКУ