Переориентируйте таблицу или расписание так, чтобы строки стали переменными
T2 = rows2vars(
переориентирует строки T1
)T1
, так, чтобы они стали переменными в выходной таблице T2
, как показано в схеме. Если rows2vars
может конкатенировать содержимое строк T1
, затем соответствующие переменные T2
массивы. В противном случае, переменные T2
массивы ячеек. rows2vars
всегда возвращает таблицу, хотя T1
может быть или таблица или расписание.
rows2vars
функционируйте копирует имена переменных T1
к новой переменной T2
. Если T1
имеет имена строки или времена строки, затем те имена или времена становятся именами переменных T2
. В противном случае, rows2vars
генерирует называет Var1,…,VarN
как имена переменных T2
.
T2 = rows2vars(___,'DataVariables',
выбирает переменные datavars
)T1
заданный datavars
и переориентирует только те переменные, чтобы стать строками T2
. Остающиеся переменные T1
отбрасываются. datavars
могут быть одни или несколько имен переменных, массив числовых или логических индексов или объект индексирования (например, выход vartype
функция. Можно использовать этот синтаксис с входными параметрами любого из предыдущих синтаксисов.
Если вы задаете переменную с помощью 'VariableNamesSource'
аргумент пары "имя-значение" от предыдущего синтаксиса, затем вы не можете задать ту переменную в datavars
.
Составьте таблицы, и затем переориентируйте их строки, чтобы быть переменными в новых таблицах.
Загрузите массивы данных из patients.mat
файл. Составьте таблицу, которая содержит LastName
, Gender
, Age
высота
, и Weight
переменные.
load patients
T1 = table(LastName,Gender,Age,Height,Weight);
head(T1,3)
ans=3×5 table
LastName Gender Age Height Weight
____________ __________ ___ ______ ______
{'Smith' } {'Male' } 38 71 176
{'Johnson' } {'Male' } 43 69 163
{'Williams'} {'Female'} 38 64 131
Переориентируйте строки T1, чтобы быть переменными выходной таблицы.
T2 = rows2vars(T1);
Отобразите первые четыре переменные T2
. Первая переменная T2
содержит имена переменных T1
. Остающиеся переменные T2
соответствуйте строкам T1
. Начиная с T1
не имел никаких меток строки, переменных T2
имейте имена по умолчанию, Var1
к VarN
для N
переменные.
T2(:,1:4)
ans=5×4 table
OriginalVariableNames Var1 Var2 Var3
_____________________ _________ ___________ ____________
{'LastName'} {'Smith'} {'Johnson'} {'Williams'}
{'Gender' } {'Male' } {'Male' } {'Female' }
{'Age' } {[ 38]} {[ 43]} {[ 38]}
{'Height' } {[ 71]} {[ 69]} {[ 64]}
{'Weight' } {[ 176]} {[ 163]} {[ 131]}
Составьте таблицу с именами строки. Если таблица имеет имена строки, то rows2vars
превращает имена строки на имена переменных.
T3 = table(Gender,Age,Height,Weight,'RowNames',LastName);
head(T3,3)
ans=3×4 table
Gender Age Height Weight
__________ ___ ______ ______
Smith {'Male' } 38 71 176
Johnson {'Male' } 43 69 163
Williams {'Female'} 38 64 131
Переориентируйте строки T3
.
T4 = rows2vars(T3); T4(:,1:4)
ans=4×4 table
OriginalVariableNames Smith Johnson Williams
_____________________ ________ ________ __________
{'Gender'} {'Male'} {'Male'} {'Female'}
{'Age' } {[ 38]} {[ 43]} {[ 38]}
{'Height'} {[ 71]} {[ 69]} {[ 64]}
{'Weight'} {[ 176]} {[ 163]} {[ 131]}
Загрузите расписание и отобразите его.
load bostonTT
Boston
Boston=6×3 timetable
Time Temp WindSpeed Rain
___________________ ____ _________ ____
2016-06-09 06:03:00 59.5 0.1 0.05
2016-06-09 12:00:23 63 2.3 0.08
2016-06-09 18:02:57 61.7 3.1 0.13
2016-06-10 06:01:47 55.4 5.7 0.15
2016-06-10 12:06:00 62.3 2.6 0.87
2016-06-10 18:02:57 58.8 6.2 0.33
Переориентируйте его так, чтобы его строки стали переменными в выходе. Функция rows2vars превращает времена строки на имена, но должна изменить их так, чтобы они были допустимыми именами переменной. Кроме того, выходным аргументом, возвращенным rows2vars, всегда является таблица, даже когда входной параметр является расписанием.
T = rows2vars(Boston)
Warning: Variable names were modified to make them valid MATLAB identifiers.
T=3×7 table
OriginalVariableNames x2016_06_0906_03_00 x2016_06_0912_00_23 x2016_06_0918_02_57 x2016_06_1006_01_47 x2016_06_1012_06_00 x2016_06_1018_02_57
_____________________ ___________________ ___________________ ___________________ ___________________ ___________________ ___________________
'Temp' 59.5 63 61.7 55.4 62.3 58.8
'WindSpeed' 0.1 2.3 3.1 5.7 2.6 6.2
'Rain' 0.05 0.08 0.13 0.15 0.87 0.33
Считайте данные из электронной таблицы в таблицу. Отобразите первые три строки.
T1 = readtable('patients.xls');
head(T1,3)
ans=3×10 table
LastName Gender Age Location Height Weight Smoker Systolic Diastolic SelfAssessedHealthStatus
____________ __________ ___ _____________________________ ______ ______ ______ ________ _________ ________________________
{'Smith' } {'Male' } 38 {'County General Hospital' } 71 176 true 124 93 {'Excellent'}
{'Johnson' } {'Male' } 43 {'VA Hospital' } 69 163 false 109 77 {'Fair' }
{'Williams'} {'Female'} 38 {'St. Mary's Medical Center'} 64 131 false 125 83 {'Good' }
Переориентируйте строки T1
быть переменными новой таблицы, T2
. Укажите что LastName
переменная из T1
источник имен переменных T2
.
T2 = rows2vars(T1,'VariableNamesSource','LastName');
Отобразите первые четыре переменные T2
. Первая переменная T2
содержит имена переменных T1
. Остающиеся переменные T2
соответствуйте строкам T1
.
T2(:,1:4)
ans=9×4 table
OriginalVariableNames Smith Johnson Williams
____________________________ ___________________________ _______________ _____________________________
{'Gender' } {'Male' } {'Male' } {'Female' }
{'Age' } {[ 38]} {[ 43]} {[ 38]}
{'Location' } {'County General Hospital'} {'VA Hospital'} {'St. Mary's Medical Center'}
{'Height' } {[ 71]} {[ 69]} {[ 64]}
{'Weight' } {[ 176]} {[ 163]} {[ 131]}
{'Smoker' } {[ 1]} {[ 0]} {[ 0]}
{'Systolic' } {[ 124]} {[ 109]} {[ 125]}
{'Diastolic' } {[ 93]} {[ 77]} {[ 83]}
{'SelfAssessedHealthStatus'} {'Excellent' } {'Fair' } {'Good' }
Отобразите данные в T2.Smith
. В этом примере, каждой переменной T2
9 1 массив ячеек, потому что значения в строках T1
не может быть конкатенирован в массивы.
T2.Smith
ans=9×1 cell
{'Male' }
{[ 38]}
{'County General Hospital'}
{[ 71]}
{[ 176]}
{[ 1]}
{[ 124]}
{[ 93]}
{'Excellent' }
Считайте данные из электронной таблицы в таблицу. Используйте первый столбец электронной таблицы как имена строки таблицы. Отобразите первые три строки.
T1 = readtable('patients.xls','ReadRowNames',true); head(T1,3)
ans=3×9 table
Gender Age Location Height Weight Smoker Systolic Diastolic SelfAssessedHealthStatus
__________ ___ _____________________________ ______ ______ ______ ________ _________ ________________________
Smith {'Male' } 38 {'County General Hospital' } 71 176 true 124 93 {'Excellent'}
Johnson {'Male' } 43 {'VA Hospital' } 69 163 false 109 77 {'Fair' }
Williams {'Female'} 38 {'St. Mary's Medical Center'} 64 131 false 125 83 {'Good' }
Переориентируйте заданные переменные из T1
и отбросьте остальных. Чтобы задать переменные данных по наименованию, используйте массив ячеек из символьных векторов.
T2 = rows2vars(T1,'DataVariables',{'Gender','Age','Height','Weight'}); T2(:,1:4)
ans=4×4 table
OriginalVariableNames Smith Johnson Williams
_____________________ ________ ________ __________
{'Gender'} {'Male'} {'Male'} {'Female'}
{'Age' } {[ 38]} {[ 43]} {[ 38]}
{'Height'} {[ 71]} {[ 69]} {[ 64]}
{'Weight'} {[ 176]} {[ 163]} {[ 131]}
Также можно задать переменные данных положением во входной таблице. Чтобы задать положения переменных, используйте числовой массив.
T3 = rows2vars(T1,'DataVariables',[1 2 6:9]);
T3(:,1:4)
ans=6×4 table
OriginalVariableNames Smith Johnson Williams
____________________________ _____________ ________ __________
{'Gender' } {'Male' } {'Male'} {'Female'}
{'Age' } {[ 38]} {[ 43]} {[ 38]}
{'Smoker' } {[ 1]} {[ 0]} {[ 0]}
{'Systolic' } {[ 124]} {[ 109]} {[ 125]}
{'Diastolic' } {[ 93]} {[ 77]} {[ 83]}
{'SelfAssessedHealthStatus'} {'Excellent'} {'Fair'} {'Good' }
T1
— Входная таблицаВходная таблица, заданная как таблица или расписание.
varnames
— Источник имен для выходных табличных переменныхИсточник имен для выходных табличных переменных, заданных как вектор символов, представляет в виде строки скаляр, целое число или логический массив.
Если varnames
вектор символов или скаляр строки, затем это - имя переменной во входной таблице T1
.
Если varnames
целочисленный n
, затем это указывает на n
переменная th в T1
.
Если varnames
логический массив, затем он указывает на n
переменная th путем определения ее n
элемент th как 1
TRUE
). Всеми другими элементами должен быть 0
ложь
).
В то время как varnames
должно быть имя, номер или логический массив, который задает табличную переменную, сама переменная может иметь любой тип данных с этими ограничениями.
Значения, содержавшиеся в заданной табличной переменной, должны иметь тип данных, который позволяет значениям быть преобразованными в строки. Например, varnames
может быть имя табличной переменной, которая содержит массив datetime, потому что значения datetime могут быть преобразованы в строки.
Количество имен, взятых из заданной табличной переменной, должно совпадать с количеством строк входной таблицы.
datavars
— Переменные во входной таблицеПеременные во входной таблице, заданной как вектор символов, массив ячеек из символьных векторов, массив строк, числовой массив, логический массив, или преобразовывающий объект в нижний индекс.
У вас есть модифицированная версия этого примера. Вы хотите открыть этот пример со своими редактированиями?
1. Если смысл перевода понятен, то лучше оставьте как есть и не придирайтесь к словам, синонимам и тому подобному. О вкусах не спорим.
2. Не дополняйте перевод комментариями “от себя”. В исправлении не должно появляться дополнительных смыслов и комментариев, отсутствующих в оригинале. Такие правки не получится интегрировать в алгоритме автоматического перевода.
3. Сохраняйте структуру оригинального текста - например, не разбивайте одно предложение на два.
4. Не имеет смысла однотипное исправление перевода какого-то термина во всех предложениях. Исправляйте только в одном месте. Когда Вашу правку одобрят, это исправление будет алгоритмически распространено и на другие части документации.
5. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.