mergevars

Объедините переменные таблицы или расписания в многостолбцовую переменную

Синтаксис

T2 = mergevars(T1,vars)
T2 = mergevars(T1,vars,'NewVariableName',newName)
T2 = mergevars(___,'MergeAsTable',true)

Описание

пример

T2 = mergevars(T1,vars) комбинирует табличные переменные, заданные vars, чтобы создать одну многостолбцовую переменную в T2 (см. схему). Все другие переменные из T1 неизменны. Можно задать переменные по наименованию положением или использованием логических индексов.

По умолчанию имя объединенной переменной в T2 принимает форму VarN, где N является положением объединенной переменной. Например, если объединенная переменная является третьей переменной в T2, то его именем является Var3.

Чтобы разделить многостолбцовые переменные, используйте функцию splitvars.

пример

T2 = mergevars(T1,vars,'NewVariableName',newName) задает имя для многостолбцовой переменной.

пример

T2 = mergevars(___,'MergeAsTable',true) объединяет заданные переменные в таблицу, вместо массива. Новая таблица является самостоятельно переменной выходной таблицы T2. Используйте этот синтаксис, чтобы объединить переменные, которые не могут быть конкатенированы в массив. Можно использовать этот синтаксис с любым из входных параметров от предыдущих синтаксисов.

Примеры

свернуть все

Составьте таблицу от переменных рабочей области.

A = [1:3]';
B = [5 11 12]';
C = [3.14 2.72 1.37]';
D = {'a';'b';'c'};
T1 = table(A,B,C,D)
T1=3×4 table
    A    B      C       D 
    _    __    ____    ___

    1     5    3.14    'a'
    2    11    2.72    'b'
    3    12    1.37    'c'

Объедините вторые и третьи переменные. Новая переменная имеет два столбца.

T2 = mergevars(T1,[2 3])
T2=3×3 table
    A       Var2        D 
    _    __________    ___

    1     5    3.14    'a'
    2    11    2.72    'b'
    3    12    1.37    'c'

Составьте таблицу с помощью массивов данных из файла patients.mat. Отобразите первые три строки таблицы.

load patients
T1 = table(LastName,Gender,Age,Height,Weight,Systolic,Diastolic);
head(T1,3)
ans=3×7 table
     LastName      Gender     Age    Height    Weight    Systolic    Diastolic
    __________    ________    ___    ______    ______    ________    _________

    'Smith'       'Male'      38       71       176        124          93    
    'Johnson'     'Male'      43       69       163        109          77    
    'Williams'    'Female'    38       64       131        125          83    

Объедините переменные Systolic и Diastolic в одну переменную с двумя столбцами. Назовите его BloodPressure.

T2 = mergevars(T1,{'Systolic','Diastolic'},'NewVariableName','BloodPressure');
head(T2,3)
ans=3×6 table
     LastName      Gender     Age    Height    Weight    BloodPressure
    __________    ________    ___    ______    ______    _____________

    'Smith'       'Male'      38       71       176       124     93  
    'Johnson'     'Male'      43       69       163       109     77  
    'Williams'    'Female'    38       64       131       125     83  

Читайте в таблице из электронной таблицы. Отобразите первые три строки.

T1 = readtable('outages.csv');
head(T1,3)
ans =

  3x6 table

      Region          OutageTime        Loss     Customers     RestorationTime         Cause     
    ___________    ________________    ______    __________    ________________    ______________

    'SouthWest'    2002-02-01 12:18    458.98    1.8202e+06    2002-02-07 16:50    'winter storm'
    'SouthEast'    2003-01-23 00:49    530.14    2.1204e+05                 NaT    'winter storm'
    'SouthEast'    2003-02-07 21:15     289.4    1.4294e+05    2003-02-17 08:14    'winter storm'

Объедините Cause, Loss и RestorationTime. Поскольку эти переменные имеют различные типы, объединяют их в таблицу в рамках таблицы.

T2 = mergevars(T1,{'Cause','Loss','RestorationTime'},...
               'NewVariableName','LossData','MergeAsTable',true);
head(T2,3)
ans =

  3x4 table

      Region          OutageTime       Customers                       LossData                  
                                                         Cause          Loss     RestorationTime 
    ___________    ________________    __________    ____________________________________________

    'SouthWest'    2002-02-01 12:18    1.8202e+06    'winter storm'    458.98    2002-02-07 16:50
    'SouthEast'    2003-01-23 00:49    2.1204e+05    'winter storm'    530.14                 NaT
    'SouthEast'    2003-02-07 21:15    1.4294e+05    'winter storm'     289.4    2003-02-17 08:14

Входные параметры

свернуть все

Входная таблица, заданная как таблица или расписание.

Переменные во входной таблице, заданной как вектор символов, массив ячеек из символьных векторов, массив строк, числовой массив или логический массив.

Имя объединенной переменной, заданной как вектор символов или скаляр строки.

Расширенные возможности

Введенный в R2018a