Main Content

cell

설명

셀형 배열이라는 인덱싱된 데이터 컨테이너를 사용하는 데이터형입니다. 각 셀에는 모든 데이터형이 포함될 수 있습니다. 셀형 배열은 주로 텍스트 목록, 텍스트와 숫자 조합, 각기 크기가 다른 숫자형 배열 중 하나를 포함합니다. 셀 집합을 참조하려면 인덱스를 소괄호 ()로 묶으십시오. 셀의 내용에 액세스하려면 중괄호 {}로 인덱스를 참조하십시오.

생성

데이터를 셀형 배열에 추가하려면 셀형 배열 생성 연산자 {}를 사용하여 배열을 생성하십시오.

C = {1,2,3;
     'text',rand(5,10,2),{11; 22; 33}}
C=2×3 cell array
    {[   1]}    {[          2]}    {[     3]}
    {'text'}    {5x10x2 double}    {3x1 cell}

{}를 사용하여 빈 0×0 셀형 배열을 생성할 수도 있습니다.

C = {}
C =

  0x0 empty cell array

특정 크기의 셀형 배열을 만들려면 아래에서 설명하는 cell 함수를 사용하십시오.

cell을 사용하여 셀형 배열을 사전할당한 후 나중에 데이터를 할당할 수 있습니다. 또한 cell은 특정 유형의 Java®, .NET, Python® 데이터 구조를 상응하는 MATLAB® 객체의 셀형 배열로도 변환합니다.

설명

예제

C = cell(n)은 빈 행렬로 구성된 n×n 셀형 배열을 반환합니다.

예제

C = cell(sz1,...,szN)은 빈 행렬로 구성된 sz1×...×szN 셀형 배열을 반환합니다. 여기서 sz1,...,szN은 각 차원의 크기를 나타냅니다. 예를 들어, cell(2,3)은 2×3 셀형 배열을 반환합니다.

예제

C = cell(sz)는 빈 행렬로 구성된 셀형 배열을 반환합니다. 여기서 크기 벡터 szsize(C)를 정의합니다. 예를 들어, cell([2 3])은 2×3 셀형 배열을 반환합니다.

D = cell(obj)는 Java 배열이나 .NET System.String 또는 System.Object 배열, 또는 Python 시퀀스를 MATLAB 셀형 배열로 변환합니다.

입력 인수

모두 확장

정사각 셀형 배열의 크기로, 정수 값으로 지정됩니다.

  • n0이면 C는 빈 셀형 배열이 됩니다.

  • n이 음수이면 0으로 처리됩니다.

데이터형: double | single | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64

셀형 배열의 차원 크기로, 정수 값으로 지정됩니다.

  • 크기가 0인 차원이 있을 경우 C는 빈 셀형 배열이 됩니다.

  • 크기가 음수인 차원이 있을 경우 0으로 처리됩니다.

  • cell은 세 번째 차원부터는 크기가 1인 차원을 무시합니다. 예를 들어, cell(3,1,1,1)은 빈 행렬로 구성된 3×1 셀형 배열을 생성합니다.

데이터형: double | single | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64

크기로, 정수로 구성된 행 벡터로 지정됩니다. sz의 각 요소는 해당하는 차원의 크기를 나타냅니다.

  • 크기가 0인 차원이 있을 경우 C는 빈 셀형 배열이 됩니다.

  • 크기가 음수인 차원이 있을 경우 0으로 처리됩니다.

  • cell은 세 번째 차원부터는 크기가 1인 차원을 무시합니다. 예를 들어, cell([3 1 1 1])은 빈 행렬로 구성된 3×1 셀형 배열을 생성합니다.

예: sz = [2 3 4]는 빈 행렬로 구성된 2×3×4 셀형 배열을 만듭니다.

데이터형: double | single | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64

입력 배열로, 다음으로 지정됩니다.

  • Java 배열 또는 객체

  • 유형 System.String 또는 System.Object의 .NET 배열

  • Python 시퀀스 유형

출력 인수

모두 확장

출력 배열로, 셀형 배열로 반환됩니다. 각 셀은 double형으로 구성된 빈 0×0 배열을 포함합니다.

변환된 배열로, 셀형 배열로 반환됩니다.

각 셀은 해당하는 Java, .NET, Python 유형과 가장 가까운 유형의 MATLAB 객체를 포함합니다. 자세한 내용은 다음을 참조하십시오.

예제

모두 축소

관련된 데이터 조각의 데이터형이 각기 다를 경우, 이러한 데이터 조각들을 셀형 배열에 함께 담을 수 있습니다. 각 셀에는 데이터 조각이 포함됩니다. 셀형 배열의 요소를 참조하려면 배열 인덱싱을 사용하십시오. 소괄호 ()를 사용하여 셀형 배열의 요소를 참조하고, 중괄호 {}를 사용하여 셀 내용을 참조할 수 있습니다.

지정된 날짜에 측정된 여러 개의 온도 측정값을 포함하는 셀형 배열을 만듭니다. 날짜를 문자형 벡터로 지정하고, 온도를 double형 배열로 지정합니다. 이러한 데이터 조각을 셀형 배열로 저장하기 위해 중괄호로 묶습니다.

C = {'2017-08-16',[56 67 78]}
C=1×2 cell array
    {'2017-08-16'}    {[56 67 78]}

서로 다른 날짜의 측정값을 셀형 배열에 추가합니다. 셀을 더 추가할 수 있는 한 가지 방법은 일반 배열을 확장할 때와 마찬가지로 대입을 통해 셀형 배열을 확장하는 것입니다.

C(2,:) = {'2017-08-17',[58 69 79]};
C(3,:) = {'2017-08-18',[60 68 81]}
C=3×2 cell array
    {'2017-08-16'}    {[56 67 78]}
    {'2017-08-17'}    {[58 69 79]}
    {'2017-08-18'}    {[60 68 81]}

C의 첫 번째 행의 요소를 참조합니다. 소괄호 ()를 사용하여 인덱싱할 경우, 결과는 셀형 배열의 서브셋인 셀형 배열입니다.

C(1,:)
ans=1×2 cell array
    {'2017-08-16'}    {[56 67 78]}

셀의 내용을 참조합니다. 중괄호 {}로 인덱싱할 경우, 결과는 지정된 셀에 포함된 데이터의 조각입니다.

C{1,2}
ans = 1×3

    56    67    78

빈 행렬로 구성된 3×3 셀형 배열을 만듭니다.

C = cell(3)
C=3×3 cell array
    {0x0 double}    {0x0 double}    {0x0 double}
    {0x0 double}    {0x0 double}    {0x0 double}
    {0x0 double}    {0x0 double}    {0x0 double}

빈 행렬로 구성된 3×4×2 셀형 배열을 만듭니다.

C = cell(3,4,2);
size(C)
ans = 1×3

     3     4     2

기존 배열과 크기가 동일한 빈 행렬로 구성된 셀형 배열을 만듭니다.

A = [7 9; 2 1; 8 3];
sz = size(A);
C = cell(sz)
C=3×2 cell array
    {0x0 double}    {0x0 double}
    {0x0 double}    {0x0 double}
    {0x0 double}    {0x0 double}

앞의 두 줄의 코드는 다음과 같이 한 줄로 표현하는 것이 보통입니다.

C = cell(size(A));

  • cell 함수로 빈 행렬로 구성된 셀형 배열을 만드는 것은 새 셀형 배열의 마지막 인덱스에 빈 행렬을 할당하는 것과 같습니다. 예를 들어, 다음 두 명령문은 서로 동일합니다.

    C = cell(3,4,2);
    C{3,4,2} = [];

확장 기능

버전 내역

R2006a 이전에 개발됨

모두 확장