Main Content

이 번역 페이지는 최신 내용을 담고 있지 않습니다. 최신 내용을 영문으로 보려면 여기를 클릭하십시오.

splitvars

테이블 또는 타임테이블에 있는 다중 열 변수 분할

설명

예제

T2 = splitvars(T1)T1에 있는 모든 다중 열 변수를 분할하여 T2에서 단일 열 변수가 되도록 합니다(도식 참조). T1의 단일 열 변수는 모두 변경되지 않습니다.

  • T1의 변수가 여러 개의 열을 갖는 경우 splitvarsT1의 원래 변수 이름으로부터 T2의 새 변수에 고유한 이름을 만듭니다.

  • T1의 변수가 테이블 자체인 경우 splitvars는 이 테이블의 변수 이름(그리고 필요한 경우 이 테이블의 이름)을 사용하여 T2의 새 변수에 고유한 이름을 만듭니다.

변수를 하나의 다중 열 변수로 병합하려면 mergevars 함수를 사용하십시오.

예제

T2 = splitvars(T1,vars)vars로 지정된 테이블 변수만 분할합니다. 이름, 위치 또는 논리형 인덱스를 사용하여 변수를 지정할 수 있습니다.

예제

T2 = splitvars(T1,vars,'NewVariableNames',newNames)T1에서 분할되어 T2로 복사되는 지정된 변수에 새 이름을 할당합니다.

예제

모두 축소

작업 공간 변수로 테이블을 만듭니다. 변수 중 일부는 여러 개의 열을 갖는 행렬입니다.

A = (1:3)';
B = [5 11 12; 20 30 50; 0.1 3.4 5.9]';
C = {'a','XX';'b','YY';'c','ZZ'};
D = [128 256 512]';
T1 = table(A,B,C,D)
T1=3×4 table
    A           B                   C            D 
    _    ________________    _______________    ___

    1     5     20    0.1    {'a'}    {'XX'}    128
    2    11     30    3.4    {'b'}    {'YY'}    256
    3    12     50    5.9    {'c'}    {'ZZ'}    512

변수 BC를 분할합니다. 출력 테이블의 모든 변수는 하나의 열을 갖습니다.

T2 = splitvars(T1)
T2=3×7 table
    A    B_1    B_2    B_3     C_1      C_2       D 
    _    ___    ___    ___    _____    ______    ___

    1     5     20     0.1    {'a'}    {'XX'}    128
    2    11     30     3.4    {'b'}    {'YY'}    256
    3    12     50     5.9    {'c'}    {'ZZ'}    512

patients.mat 파일의 데이터로 구성된 배열을 사용하여 여러 테이블이 포함된 테이블을 만듭니다. 처음 세 개의 행을 표시합니다.

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

BloodPressure를 분할할 변수로 지정합니다.

T2 = splitvars(T1,'BloodPressure');
head(T2,3)
ans=3×5 table
      LastName        Personal_Data          BMI_Data        Systolic    Diastolic
                      Gender      Age    Height    Weight                         
    ____________    _________________    ________________    ________    _________

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

여러 개의 변수를 이름으로 지정하려면 문자형 벡터로 구성된 셀형 배열을 사용하십시오.

T3 = splitvars(T1,{'BMI_Data','BloodPressure'});
head(T3,3)
ans=3×6 table
      LastName        Personal_Data      Height    Weight    Systolic    Diastolic
                      Gender      Age                                             
    ____________    _________________    ______    ______    ________    _________

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

변수를 위치로 지정하려면 숫자형 배열을 사용하십시오.

T4 = splitvars(T1,[2 4]);
head(T4,3)
ans=3×6 table
      LastName        Gender      Age        BMI_Data        Systolic    Diastolic
                                         Height    Weight                         
    ____________    __________    ___    ________________    ________    _________

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

patients.mat 파일의 데이터를 사용하여 다중 열 변수가 포함된 테이블을 만듭니다. 처음 세 개의 행을 표시합니다.

load patients
Personal_Data = [Age,Height,Weight];
BloodPressure = [Systolic,Diastolic];
T1 = table(LastName,Gender,Personal_Data,BloodPressure);
head(T1,3)
ans=3×4 table
      LastName        Gender       Personal_Data      BloodPressure
    ____________    __________    ________________    _____________

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

BloodPressure를 분할한 후 출력 테이블의 새 변수에 새 이름을 지정합니다.

T2 = splitvars(T1,'BloodPressure','NewVariableNames',{'Systolic','Diastolic'});
head(T2,3)
ans=3×5 table
      LastName        Gender       Personal_Data      Systolic    Diastolic
    ____________    __________    ________________    ________    _________

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

BMI_DataBloodPressure를 모두 분할합니다. 분할되는 각 변수에 대해, 올바른 개수의 새 이름을 갖는 셀형 배열을 제공해야 합니다.

T3 = splitvars(T1,{'Personal_Data','BloodPressure'},...
     'NewVariableNames',{{'Age','Height','Weight'},{'Systolic','Diastolic'}});
head(T3,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    

입력 인수

모두 축소

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

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

분할된 변수의 이름으로, 문자형 벡터로 구성된 셀형 배열 또는 string형 배열로 지정됩니다.

확장 기능

버전 내역

R2018a에 개발됨