splitvars
테이블 또는 타임테이블에 있는 다중 열 변수 분할
설명
T2 = splitvars(
은 T1
)T1
에 있는 모든 다중 열 변수를 분할하여 T2
에서 단일 열 변수가 되도록 합니다. T1
의 단일 열 변수는 모두 변경되지 않습니다.
T1
의 변수가 여러 개의 열을 갖는 경우splitvars
는T1
의 원래 변수 이름으로부터T2
의 새 변수에 고유한 이름을 만듭니다.T1
의 변수가 테이블 자체인 경우splitvars
는 이 테이블의 변수 이름(그리고 필요한 경우 이 테이블의 이름)을 사용하여T2
의 새 변수에 고유한 이름을 만듭니다.
변수를 하나의 다중 열 변수로 병합하려면 mergevars
함수를 사용하십시오.
예제
변수 분할하기
작업 공간 변수로 테이블을 만듭니다. 변수 중 일부는 여러 개의 열을 갖는 행렬입니다.
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
변수 B
와 C
를 분할합니다. 출력 테이블의 모든 변수는 하나의 열을 갖습니다.
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)
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)
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)
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)
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)
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)
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_Data
와 BloodPressure
를 모두 분할합니다. 분할되는 각 변수에 대해, 올바른 개수의 새 이름을 갖는 셀형 배열을 제공해야 합니다.
T3 = splitvars(T1,{'Personal_Data','BloodPressure'},... 'NewVariableNames',{{'Age','Height','Weight'},{'Systolic','Diastolic'}}); head(T3,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
입력 인수
T1
— 입력 테이블
테이블 | 타임테이블
입력 테이블로, table형 또는 timetable형으로 지정됩니다.
vars
— 입력 테이블의 변수
string형 배열 | 문자형 벡터 | 문자형 벡터로 구성된 셀형 배열 | pattern
스칼라 | 숫자형 배열 | 논리형 배열
입력 테이블의 변수로, string형 배열, 문자형 벡터, 문자형 벡터로 구성된 셀형 배열, pattern
스칼라, 숫자형 배열 또는 논리형 배열로 지정됩니다.
newNames
— 분할된 변수의 이름
문자형 벡터로 구성된 셀형 배열 | string형 배열
분할된 변수의 이름으로, 문자형 벡터로 구성된 셀형 배열 또는 string형 배열로 지정됩니다.
확장 기능
tall형 배열
메모리에 담을 수 없을 정도로 많은 행을 가진 배열을 계산할 수 있습니다.
C/C++ 코드 생성
MATLAB® Coder™를 사용하여 C 코드나 C++ 코드를 생성할 수 있습니다.
사용법 관련 참고 및 제한 사항:
vars
입력 인수는 패턴 표현식을 지원하지 않습니다.'NewVariableNames'
이름-값 인수의 값은 상수여야 합니다.분할된 변수의 열 개수는 가변적일 수 없습니다.
스레드 기반 환경
MATLAB®의 backgroundPool
을 사용해 백그라운드에서 코드를 실행하거나 Parallel Computing Toolbox™의 ThreadPool
을 사용해 코드 실행 속도를 높일 수 있습니다.
이 함수는 스레드 기반 환경을 완전히 지원합니다. 자세한 내용은 스레드 기반 환경에서 MATLAB 함수 실행하기 항목을 참조하십시오.
버전 내역
R2018a에 개발됨
MATLAB 명령
다음 MATLAB 명령에 해당하는 링크를 클릭했습니다.
명령을 실행하려면 MATLAB 명령 창에 입력하십시오. 웹 브라우저는 MATLAB 명령을 지원하지 않습니다.
Select a Web Site
Choose a web site to get translated content where available and see local events and offers. Based on your location, we recommend that you select: .
You can also select a web site from the following list:
How to Get Best Site Performance
Select the China site (in Chinese or English) for best site performance. Other MathWorks country sites are not optimized for visits from your location.
Americas
- América Latina (Español)
- Canada (English)
- United States (English)
Europe
- Belgium (English)
- Denmark (English)
- Deutschland (Deutsch)
- España (Español)
- Finland (English)
- France (Français)
- Ireland (English)
- Italia (Italiano)
- Luxembourg (English)
- Netherlands (English)
- Norway (English)
- Österreich (Deutsch)
- Portugal (English)
- Sweden (English)
- Switzerland
- United Kingdom (English)