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

struct2table

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

구문

T = struct2table(S)
T = struct2table(S,Name,Value)

설명

예제

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 = 3x1 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형 배열이 쉼표로 구분되어 지정됩니다.

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

true

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

false

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

출력 인수

모두 축소

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

R2013b에 개발됨