Преобразуйте массив структур в таблицу
составляет таблицу из массива структур, T
= struct2table(S
,Name,Value
)S
, с дополнительными опциями, заданными одним или несколькими Name,Value
парные аргументы.
Например, можно задать имена строки, чтобы включать в таблицу.
Преобразуйте скалярную структуру в таблицу с помощью опций по умолчанию.
Создайте массив структур, S
.
S.Name = {'CLARK';'BROWN';'MARTIN'}; S.Gender = {'M';'F';'M'}; S.SystolicBP = [124;122;130]; S.DiastolicBP = [93;80;92]; S
S = struct with fields:
Name: {3x1 cell}
Gender: {3x1 cell}
SystolicBP: [3x1 double]
DiastolicBP: [3x1 double]
Скалярная структура, S
, имеет четыре поля, каждого с тремя строками.
Преобразуйте массив структур в таблицу.
T = struct2table(S)
T=3×4 table
Name Gender SystolicBP DiastolicBP
__________ ______ __________ ___________
{'CLARK' } {'M'} 124 93
{'BROWN' } {'F'} 122 80
{'MARTIN'} {'M'} 130 92
Имена полей структуры в S
станьте именами переменных в выходной таблице. Размер T
3 на 4.
Измените Name
от переменной до строки называет путем изменения свойства таблицы, T.Properties.RowNames
, и затем удаление переменной Name
.
T.Properties.RowNames = T.Name; T.Name = []; T
T=3×3 table
Gender SystolicBP DiastolicBP
______ __________ ___________
CLARK {'M'} 124 93
BROWN {'F'} 122 80
MARTIN {'M'} 130 92
Создайте нескалярный массив структур, S
.
S(1,1).Name = 'CLARK'; S(1,1).Gender = 'M'; S(1,1).SystolicBP = 124; S(1,1).DiastolicBP = 93; S(2,1).Name = 'BROWN'; S(2,1).Gender = 'F'; S(2,1).SystolicBP = 122; S(2,1).DiastolicBP = 80; S(3,1).Name = 'MARTIN'; S(3,1).Gender = 'M'; S(3,1).SystolicBP = 130; S(3,1).DiastolicBP = 92; S
S=3×1 struct array with fields:
Name
Gender
SystolicBP
DiastolicBP
S
массив структур 3 на 1 с четырьмя полями.
Преобразуйте массив структур в таблицу.
T = struct2table(S)
T=3×4 table
Name Gender SystolicBP DiastolicBP
__________ ______ __________ ___________
{'CLARK' } {'M'} 124 93
{'BROWN' } {'F'} 122 80
{'MARTIN'} {'M'} 130 92
Имена полей структуры в S
станьте именами переменных в выходной таблице. Размер T
3 на 4.
Используйте 'AsArray',true
составлять таблицу от скалярной структуры, поля которой имеют различные количества строк.
Создайте скалярную структуру, S
, с полями name
, billing
, и test
.
S.name = 'John Doe';
S.billing = 127.00;
S.test = [79, 75, 73; 180, 178, 177.5; 220, 210, 205];
S
S = struct with fields:
name: 'John Doe'
billing: 127
test: [3x3 double]
Поля имеют различные количества строк. Поэтому вы не можете использовать struct2table(S)
, который использует 'AsArray',false
по умолчанию.
Обработайте скалярную структуру как массив и преобразуйте ее в таблицу.
T = struct2table(S,'AsArray',true)
T=1×3 table
name billing test
____________ _______ ____________
{'John Doe'} 127 {3x3 double}
T
содержит одну строку.
S
Массив структурМассив структур в виде скалярного массива структур.
Если S
скалярная структура с n
поля, все из которых имеют m
строки, затем T
m
- n
таблица.
Если S
нескалярный m
- 1
массив структур с n
поля, затем T
m
- n
таблица.
Задайте дополнительные разделенные запятой пары Name,Value
аргументы. Name
имя аргумента и Value
соответствующее значение. Name
должен появиться в кавычках. Вы можете задать несколько аргументов в виде пар имен и значений в любом порядке, например: Name1, Value1, ..., NameN, ValueN
.
'RowNames',{'row1','row2','row3'}
использует имена строки, row1
, row2
, и row3
для таблицы, T
.'RowNames'
'RowNames' {}
(значение по умолчанию) | массив ячеек из символьных векторов | массив строкСтрока называет в виде разделенной запятой пары, состоящей из 'RowNames'
и массив ячеек из символьных векторов или массив строк, элементы которого непусты и отличны.
Имена строки могут иметь любые символы Unicode®, включая символы non-ASCII и пробелы.
Если вы задаете имена строки, которые имеют продвижение или конечные пробельные символы, то struct2table
удаляет их из имен строки.
'DimensionNames'
DimensionNames Начиная с R2021a
Размерность называет в виде двухэлементного массива ячеек из символьных векторов или двухэлементного массива строк, элементы которого непусты и отличны.
Имена размерности могут иметь любые символы Unicode, включая символы non-ASCII и пробелы.
Перед R2021a можно указать, что размерность называет только путем установки DimensionNames
свойство выхода.
'AsArray'
— Индикатор для того, как обработать скалярную структуруfalse
(значение по умолчанию) | true
| 0
| 1
Индикатор для того, как обработать скалярную структуру в виде разделенной запятой пары, состоящей из 'AsArray'
и любой false
TRUE
, 0, или
1
.
|
|
|
|
T
— Таблица OutputВыведите таблицу, возвращенную как таблица. Таблица может сохранить метаданные, такие как описания, переменные модули, имена переменных и имена строки. Для получения дополнительной информации смотрите раздел Properties table
.
Указания и ограничения по применению:
Для получения дополнительной информации смотрите Генерацию кода для Таблиц (MATLAB Coder) и Табличные Ограничения для Генерации кода (MATLAB Coder).
У вас есть модифицированная версия этого примера. Вы хотите открыть этот пример со своими редактированиями?
1. Если смысл перевода понятен, то лучше оставьте как есть и не придирайтесь к словам, синонимам и тому подобному. О вкусах не спорим.
2. Не дополняйте перевод комментариями “от себя”. В исправлении не должно появляться дополнительных смыслов и комментариев, отсутствующих в оригинале. Такие правки не получится интегрировать в алгоритме автоматического перевода.
3. Сохраняйте структуру оригинального текста - например, не разбивайте одно предложение на два.
4. Не имеет смысла однотипное исправление перевода какого-то термина во всех предложениях. Исправляйте только в одном месте. Когда Вашу правку одобрят, это исправление будет алгоритмически распространено и на другие части документации.
5. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.