table2struct
테이블을 구조체형 배열로 변환
설명
S = table2struct(는 테이블 또는 타임테이블 T)T를 구조체형 배열 S로 변환합니다. T의 각 변수는 S의 필드가 됩니다. T가 필드 m×n 테이블 또는 타임테이블이면 S는 n개의 필드를 갖는 m×1 구조체형 배열이 됩니다.
출력값 S에는 T.Properties의 테이블 속성이 포함되지 않습니다.
T가 행 이름을 포함하는 테이블인 경우S에는 행 이름이 포함되지 않습니다.T가 타임테이블인 경우S에는 행 시간값이 포함되지 않습니다.
예제
5개의 행과 3개의 변수를 가진 테이블 T를 만듭니다.
T = table(categorical(["Y";"N";"Y";"N";"N"]),[38;43;38;40;49],... [124 93;109 77; 125 83; 117 75; 122 80],... 'VariableNames',["Smoker" "Age" "BloodPressure"])
T=5×3 table
Smoker Age BloodPressure
______ ___ _____________
Y 38 124 93
N 43 109 77
Y 38 125 83
N 40 117 75
N 49 122 80
T를 구조체형 배열로 변환합니다.
S = table2struct(T)
S=5×1 struct array with fields:
Smoker
Age
BloodPressure
테이블 T가 5개의 행을 가지므로 구조체는 5×1이 됩니다. T가 3개의 변수를 가지므로 S는 여기에 대응하는 3개의 필드를 갖습니다.
S의 첫 번째 요소에 대한 필드 데이터를 표시합니다.
S(1)
ans = struct with fields:
Smoker: Y
Age: 38
BloodPressure: [124 93]
이 정보는 테이블의 첫 번째 행에 대응합니다.
5개의 행과 3개의 변수를 가진 테이블 T를 만듭니다.
T = table(categorical(["Y";"N";"Y";"N";"N"]),[38;43;38;40;49],... [124 93;109 77; 125 83; 117 75; 122 80],... 'VariableNames',["Smoker" "Age" "BloodPressure"])
T=5×3 table
Smoker Age BloodPressure
______ ___ _____________
Y 38 124 93
N 43 109 77
Y 38 125 83
N 40 117 75
N 49 122 80
T를 스칼라 구조체로 변환합니다.
S = table2struct(T,"ToScalar",true)S = struct with fields:
Smoker: [5×1 categorical]
Age: [5×1 double]
BloodPressure: [5×2 double]
테이블 T가 5개의 행을 가지므로 스칼라 구조체의 필드에 포함된 데이터는 5×1이 됩니다.
필드 BloodPressure의 데이터를 표시합니다.
S.BloodPressure
ans = 5×2
124 93
109 77
125 83
117 75
122 80
구조체 필드 BloodPressure는 테이블 T에서 같은 이름을 가진 변수에 포함된 모든 데이터를 포함합니다.
행 이름을 포함하는 테이블 T를 만듭니다.
T = table(categorical(["Y";"N";"Y";"N";"N"]),[38;43;38;40;49],... [124 93;109 77; 125 83; 117 75; 122 80],... 'VariableNames',["Smoker" "Age" "BloodPressure"],... 'RowNames',["Chang" "Brown" "Ruiz" "Lee" "Smith"])
T=5×3 table
Smoker Age BloodPressure
______ ___ _____________
Chang Y 38 124 93
Brown N 43 109 77
Ruiz Y 38 125 83
Lee N 40 117 75
Smith N 49 122 80
T를 스칼라 구조체로 변환합니다.
S = table2struct(T,"ToScalar",true)S = struct with fields:
Smoker: [5×1 categorical]
Age: [5×1 double]
BloodPressure: [5×2 double]
테이블의 행 이름에 대한 필드를 추가합니다.
S.RowNames = T.Properties.RowNames
S = struct with fields:
Smoker: [5×1 categorical]
Age: [5×1 double]
BloodPressure: [5×2 double]
RowNames: {5×1 cell}
S가 비 스칼라 구조체인 경우, 테이블의 행 이름을 담은 필드를 포함하려면 [S.RowNames] = T.Properties.RowNames{:}을 사용하십시오.
입력 인수
입력 테이블로, table형 또는 timetable형으로 지정됩니다.
T에 유효한 MATLAB® 식별자가 아닌 이름의 변수가 있는 경우, table2struct는 변수를 수정하여 우선 공백을 제거하고 비ASCII 문자를 밑줄로 바꾸어 유효한 필드 이름이 생성되도록 합니다.
확장 기능
사용법 관련 참고 및 제한 사항:
생성된 코드에서 이 함수를 사용할 때는 입력 테이블이 상수여야 합니다. 자세한 내용은 Code Generation for Tables (MATLAB Coder) 항목과 Table Limitations for Code Generation (MATLAB Coder) 항목을 참조하십시오.
스레드 기반 환경
MATLAB®의 backgroundPool을 사용해 백그라운드에서 코드를 실행하거나 Parallel Computing Toolbox™의 ThreadPool을 사용해 코드 실행 속도를 높일 수 있습니다.
버전 내역
R2013b에 개발됨
참고 항목
MATLAB Command
You clicked a link that corresponds to this MATLAB command:
Run the command by entering it in the MATLAB Command Window. Web browsers do not support MATLAB commands.
웹사이트 선택
번역된 콘텐츠를 보고 지역별 이벤트와 혜택을 살펴보려면 웹사이트를 선택하십시오. 현재 계신 지역에 따라 다음 웹사이트를 권장합니다:
또한 다음 목록에서 웹사이트를 선택하실 수도 있습니다.
사이트 성능 최적화 방법
최고의 사이트 성능을 위해 중국 사이트(중국어 또는 영어)를 선택하십시오. 현재 계신 지역에서는 다른 국가의 MathWorks 사이트 방문이 최적화되지 않았습니다.
미주
- América Latina (Español)
- Canada (English)
- United States (English)
유럽
- 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)