Main Content

이 페이지의 최신 내용은 아직 번역되지 않았습니다. 최신 내용은 영문으로 볼 수 있습니다.

struct2table

구조체형 배열을 테이블로 변환

설명

예제

T = struct2table(S)는 구조체형 배열 S를 테이블 T로 변환합니다. S의 각 필드는 T에서 변수가 됩니다.

예제

T = struct2table(S,Name,Value)는 하나 이상의 Name,Value 쌍 인수를 추가 옵션으로 지정하여 구조체형 배열 S에서 테이블을 만듭니다.

예를 들어, 테이블에 포함할 행 이름을 지정할 수 있습니다.

예제

모두 축소

디폴트 옵션을 사용하여 스칼라 구조체를 테이블로 변환합니다.

구조체형 배열 S를 만듭니다.

S.Name = {'CLARK';'BROWN';'MARTIN'};
S.Gender = {'M';'F';'M'};
S.SystolicBP = [124;122;130];
S.DiastolicBP = [93;80;92];

S
S = struct with fields:
           Name: {3x1 cell}
         Gender: {3x1 cell}
     SystolicBP: [3x1 double]
    DiastolicBP: [3x1 double]

스칼라 구조체 S에는 4개의 필드가 있으며 각 필드는 3개의 행으로 구성되어 있습니다.

구조체형 배열을 테이블로 변환합니다.

T = struct2table(S)
T=3×4 table
       Name       Gender    SystolicBP    DiastolicBP
    __________    ______    __________    ___________

    {'CLARK' }    {'M'}        124            93     
    {'BROWN' }    {'F'}        122            80     
    {'MARTIN'}    {'M'}        130            92     

S의 구조체 필드 이름은 출력 테이블의 변수 이름이 됩니다. T의 크기는 3x4입니다.

테이블 속성 T.Properties.RowNames를 수정한 다음, 변수 Name을 삭제하여 Name을 변수에서 행 이름으로 변경합니다.

T.Properties.RowNames = T.Name;
T.Name = [];

T
T=3×3 table
              Gender    SystolicBP    DiastolicBP
              ______    __________    ___________

    CLARK     {'M'}        124            93     
    BROWN     {'F'}        122            80     
    MARTIN    {'M'}        130            92     

비 스칼라 구조체형 배열 S를 만듭니다.

S(1,1).Name = 'CLARK';
S(1,1).Gender = 'M';
S(1,1).SystolicBP = 124;
S(1,1).DiastolicBP = 93;

S(2,1).Name = 'BROWN';
S(2,1).Gender = 'F';
S(2,1).SystolicBP = 122;
S(2,1).DiastolicBP = 80;

S(3,1).Name = 'MARTIN';
S(3,1).Gender = 'M';
S(3,1).SystolicBP = 130;
S(3,1).DiastolicBP = 92;

S
S=3×1 struct array with fields:
    Name
    Gender
    SystolicBP
    DiastolicBP

S는 필드가 4개인 3x1 구조체형 배열입니다.

구조체형 배열을 테이블로 변환합니다.

T = struct2table(S)
T=3×4 table
       Name       Gender    SystolicBP    DiastolicBP
    __________    ______    __________    ___________

    {'CLARK' }    {'M'}        124            93     
    {'BROWN' }    {'F'}        122            80     
    {'MARTIN'}    {'M'}        130            92     

S의 구조체 필드 이름은 출력 테이블의 변수 이름이 됩니다. T의 크기는 3x4입니다.

'AsArray',true를 사용하여 필드의 행 개수가 서로 다른 스칼라 구조체에서 테이블을 만듭니다.

name 필드, billing 필드, test 필드를 가진 스칼라 구조체 S를 만듭니다.

S.name = 'John Doe';
S.billing = 127.00;
S.test = [79, 75, 73; 180, 178, 177.5; 220, 210, 205];
S
S = struct with fields:
       name: 'John Doe'
    billing: 127
       test: [3x3 double]

필드의 행 개수가 서로 다릅니다. 따라서, 디폴트 값 'AsArray',false로는 struct2table(S)를 사용할 수 없습니다.

스칼라 구조체를 배열로 처리한 후 테이블로 변환합니다.

T = struct2table(S,'AsArray',true)
T=1×3 table
        name        billing        test    
    ____________    _______    ____________

    {'John Doe'}      127      {3x3 double}

T는 하나의 행을 가집니다.

입력 인수

모두 축소

구조체형 배열로, 스칼라 구조체형 배열로 지정됩니다.

  • S가 모두 m개 행을 가진 필드 n개가 포함된 스칼라 구조체이면 Tmxn 테이블이 됩니다.

  • S가 필드 n개가 포함된 비 스칼라 mx1 구조체형 배열이면 Tmxn 테이블이 됩니다.

이름-값 쌍의 인수

선택적으로 Name,Value 인수가 쉼표로 구분되어 지정됩니다. 여기서 Name은 인수 이름이고 Value는 대응값입니다. Name은 따옴표 안에 표시해야 합니다. Name1,Value1,...,NameN,ValueN과 같이 여러 개의 이름-값 쌍의 인수를 어떤 순서로든 지정할 수 있습니다.

예: 'RowNames',{'row1','row2','row3'}은 행 이름 row1, row2, row3을 테이블 T에 사용합니다.

T의 행 이름으로, 'RowNames'와 함께 비어 있지 않은 고유한 요소를 갖는 문자형 벡터로 구성된 셀형 배열 또는 string형 배열이 쉼표로 구분되어 지정됩니다.

공백이나 비ASCII 문자를 포함하여 모든 Unicode® 문자를 행 이름에 사용할 수 있습니다.

선행 또는 후행 공백 문자가 있는 행 이름을 지정하면 struct2table이 행 이름에서 공백 문자를 제거합니다.

스칼라 구조체를 처리하는 방법을 나타내는 표시자로, 'AsArray'와 함께 false, true, 0 또는 1이 쉼표로 구분되어 지정됩니다.

true

struct2tableS를 1개의 행과 n개의 변수를 가진 테이블로 변환합니다. 변수의 크기는 다를 수 있습니다.

false

struct2table은 필드 n개가 포함된 스칼라 구조체형 배열을 mxn 테이블로 변환합니다. 각 필드에는 m개 행이 있어야 합니다. 이는 디폴트 동작입니다.

출력 인수

모두 축소

출력 테이블로, 테이블 형식으로 반환됩니다. 이 테이블에는 설명, 변수 단위, 변수 이름, 행 이름과 같은 메타데이터가 저장될 수 있습니다. 자세한 내용은 table의 속성 섹션을 참조하십시오.

확장 기능

R2013b에 개발됨