exponenta event banner

Запись данных в текстовые файлы

Экспорт табличных данных, содержащихся в таблицах, массивах ячеек или числовых массивах, из рабочей области MATLAB ® в текстовые файлы.

Экспорт таблицы в текстовый файл

Можно экспортировать табличные данные из рабочей области MATLAB ® в текстовый файл с помощью writetable функция. Создайте образец таблицы, запишите таблицу в текстовый файл, а затем запишите таблицу в текстовый файл с дополнительными параметрами.

Создайте образец таблицы, T, содержащие переменные Pitch, Shape, Price и Stock.

Pitch = [0.7;0.8;1;1.25;1.5];
Shape = {'Pan';'Round';'Button';'Pan';'Round'};
Price = [10.0;13.59;10.50;12.00;16.69];
Stock = [376;502;465;1091;562];
T = table(Pitch,Shape,Price,Stock)
T=5×4 table
    Pitch      Shape       Price    Stock
    _____    __________    _____    _____

     0.7     {'Pan'   }       10     376 
     0.8     {'Round' }    13.59     502 
       1     {'Button'}     10.5     465 
    1.25     {'Pan'   }       12    1091 
     1.5     {'Round' }    16.69     562 

Экспорт таблицы, T, в текстовый файл с именем tabledata.txt. Просмотрите содержимое файла. По умолчанию writetable записывает данные, разделенные запятыми, включает имена табличных переменных в качестве заголовков столбцов.

writetable(T,'tabledata.txt');
type tabledata.txt
Pitch,Shape,Price,Stock
0.7,Pan,10,376
0.8,Round,13.59,502
1,Button,10.5,465
1.25,Pan,12,1091
1.5,Round,16.69,562

Создание таблицы T2 который включает имена строк с помощью RowNames аргумент пары имя-значение.

rowNames = {'M4';'M5';'M6';'M8';'M10'};
T2 = table(Pitch,Shape,Price,Stock,'RowNames',rowNames)
T2=5×4 table
           Pitch      Shape       Price    Stock
           _____    __________    _____    _____

    M4      0.7     {'Pan'   }       10     376 
    M5      0.8     {'Round' }    13.59     502 
    M6        1     {'Button'}     10.5     465 
    M8     1.25     {'Pan'   }       12    1091 
    M10     1.5     {'Round' }    16.69     562 

Экспорт T2 в текстовый файл с разделителями табуляции с именем tabledata2.txt. Используйте Delimiter аргумент пары имя-значение для указания разделителя табуляции и WriteRowNames аргумент пары имя-значение для включения имен строк. Просмотрите содержимое файла.

writetable(T2,'tabledata2.txt','Delimiter','\t','WriteRowNames',true);
type tabledata2.txt
Row	Pitch	Shape	Price	Stock
M4	0.7	Pan	10	376
M5	0.8	Round	13.59	502
M6	1	Button	10.5	465
M8	1.25	Pan	12	1091
M10	1.5	Round	16.69	562

Экспорт массива ячеек в текстовый файл

Можно экспортировать массив ячеек из рабочей области MATLAB ® в текстовый файл одним из следующих способов:

  • Используйте функцию writecell для экспорта массива ячеек в текстовый файл.

  • Использовать fprintf для экспорта массива ячеек путем указания формата выходных данных.

Создание массива ячеек образца C.

C = {'Atkins',32,77.3,'M';'Cheng',30,99.8,'F';'Lam',31,80.2,'M'}
C = 3×4 cell array
    {'Atkins'}    {[32]}    {[77.3000]}    {'M'}
    {'Cheng' }    {[30]}    {[99.8000]}    {'F'}
    {'Lam'   }    {[31]}    {[80.2000]}    {'M'}

Экспорт массива ячеек с помощью writecell.

writecell(C,'data.dat')

Просмотрите содержимое файла.

type data.dat
Atkins,32,77.3,M
Cheng,30,99.8,F
Lam,31,80.2,M

Либо импортируйте массив ячеек с помощью fprintf. Открыть файл, в который можно записать имя celldata.dat. Определить formatSpec использование спецификаторов формата для описания шаблона данных в файле. Типичные спецификаторы формата включают '%s' для символьного вектора, '%d' для целого числа, или '%f' для числа с плавающей запятой. Разделите каждый спецификатор формата пробелом, чтобы указать разделитель пробела для выходного файла. Включить символ новой строки в конце каждой строки данных ('\n').

fileID = fopen('celldata.dat','w');
formatSpec = '%s %d %2.1f %s\n';

Определение размера C и одновременно экспортировать одну строку данных с помощью fprintf функция. Затем закройте файл. fprintf записывает файл с разделителями.

[nrows,ncols] = size(C);
for row = 1:nrows
    fprintf(fileID,formatSpec,C{row,:});
end
fclose(fileID);

Просмотрите содержимое файла.

type celldata.dat
Atkins 32 77.3 M
Cheng 30 99.8 F
Lam 31 80.2 M

Экспорт числового массива в текстовый файл

Можно экспортировать числовой массив в текстовый файл с помощью writematrix.

Создайте числовой массив A.

A = magic(5)/10 
A = 5×5

    1.7000    2.4000    0.1000    0.8000    1.5000
    2.3000    0.5000    0.7000    1.4000    1.6000
    0.4000    0.6000    1.3000    2.0000    2.2000
    1.0000    1.2000    1.9000    2.1000    0.3000
    1.1000    1.8000    2.5000    0.2000    0.9000

Запись числового массива в myData.dat и укажите разделитель, который должен быть ';'. Затем просмотрите содержимое файла.

writematrix(A,'myData.dat','Delimiter',';')  
type myData.dat
1.7;2.4;0.1;0.8;1.5
2.3;0.5;0.7;1.4;1.6
0.4;0.6;1.3;2;2.2
1;1.2;1.9;2.1;0.3
1.1;1.8;2.5;0.2;0.9

См. также

| | | | |