Main Content

mergevars

테이블 또는 타임테이블 변수를 다중 열 변수로 결합

설명

예제

T2 = mergevars(T1,vars)vars로 지정된 테이블 변수를 결합하여 T2에 하나의 다중 열 변수를 만듭니다. T1의 다른 모든 변수는 변경되지 않습니다. 이름, 위치 또는 논리형 인덱스를 사용하여 변수를 지정할 수 있습니다.

예를 들어, T1var3var5라는 변수가 있으면 T2 = mergevars(T1,["var3","var5"])를 사용하여 두 개의 열을 가진 하나의 변수로 결합할 수 있습니다. 결합된 변수의 이름은 T2에서 var3이 됩니다.

기본적으로 병합된 변수 이름은 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 파일의 데이터로 구성된 배열을 사용하여 테이블을 만듭니다. 테이블의 처음 3개 행을 표시합니다.

load patients
T1 = table(LastName,Gender,Age,Height,Weight,Systolic,Diastolic);
head(T1,3)
      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    

변수 SystolicDiastolic을 병합하여 두 개의 열을 가진 하나의 변수로 병합합니다. 이름을 BloodPressure로 지정합니다.

T2 = mergevars(T1,{'Systolic','Diastolic'},'NewVariableName','BloodPressure');
head(T2,3)
      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)
       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)
       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

입력 인수

모두 축소

입력 테이블로, table형 또는 timetable형으로 지정됩니다.

입력 테이블의 변수로, string형 배열, 문자형 벡터, 문자형 벡터로 구성된 셀형 배열, pattern 스칼라, 숫자형 배열 또는 논리형 배열로 지정됩니다.

병합된 변수의 이름으로, 문자형 벡터 또는 string형 스칼라로 지정됩니다.

확장 기능

버전 내역

R2018a에 개발됨