Main Content

이 번역 페이지는 최신 내용을 담고 있지 않습니다. 최신 내용을 영문으로 보려면 여기를 클릭하십시오.

horzcat

배열을 가로로 결합(Concatenate)

설명

예제

C = horzcat(A,B)AB의 크기가 서로 호환되는 경우(두 번째 차원을 제외한 차원의 길이가 일치하는 경우) BA의 끝에 가로로 결합합니다.

예제

C = horzcat(A1,A2,…,An)A1, A2, … , An을 가로로 결합합니다.

horzcat는 대괄호를 사용하여 배열을 가로로 결합하거나 추가하는 것과 같습니다. 예를 들어, AB가 호환 가능한 배열인 경우 [A,B][A B]horzcat(A,B)와 동일합니다.

예제

모두 축소

두 행렬을 가로로 결합합니다.

두 행렬을 만들고 대괄호 표기법을 사용해 두 번째 행렬을 첫 번째 행렬에 가로로 추가합니다.

A = [1 2; 3 4]
A = 2×2

     1     2
     3     4

B = [4 5 6; 7 8 9]
B = 2×3

     4     5     6
     7     8     9

C = [A,B]
C = 2×5

     1     2     4     5     6
     3     4     7     8     9

이제 horzcat를 사용해 두 번째 행렬을 첫 번째 행렬에 가로로 추가합니다.

D = horzcat(A,B)
D = 2×5

     1     2     4     5     6
     3     4     7     8     9

3개의 행과 2개의 변수를 가진 테이블 A를 생성합니다.

A = table([5;6;5],['M';'M';'M'],...
    'VariableNames',{'Age' 'Gender'},...
    'RowNames',{'Thomas' 'Gordon' 'Percy'})
A=3×2 table
              Age    Gender
              ___    ______

    Thomas     5       M   
    Gordon     6       M   
    Percy      5       M   

3개의 행과 3개의 변수를 가진 테이블 B를 생성합니다.

B = table([45;41;40],[45;32;34],{'NY';'CA';'MA'},...
    'VariableNames',{'Height' 'Weight' 'Birthplace'},...
    'RowNames',{'Percy' 'Gordon' 'Thomas'})
B=3×3 table
              Height    Weight    Birthplace
              ______    ______    __________

    Percy       45        45        {'NY'}  
    Gordon      41        32        {'CA'}  
    Thomas      40        34        {'MA'}  

AB를 가로로 결합합니다. C의 행의 순서는 A의 순서와 일치합니다.

C = horzcat(A,B)
C=3×5 table
              Age    Gender    Height    Weight    Birthplace
              ___    ______    ______    ______    __________

    Thomas     5       M         40        34        {'MA'}  
    Gordon     6       M         41        32        {'CA'}  
    Percy      5       M         45        45        {'NY'}  

날짜 문자형 벡터, string형 날짜, datetime형을 날짜로 구성된 하나의 행으로 결합합니다. 결과는 datetime형 행 벡터가 됩니다.

chardate = '2016-03-24';
strdate = "2016-04-19";
t = datetime('2016-05-10','InputFormat','yyyy-MM-dd');
C = horzcat(chardate,strdate,t)
C = 1x3 datetime
   24-Mar-2016   19-Apr-2016   10-May-2016

세 개의 string형 배열을 단일 배열로 결합합니다.

A1 = ["str1"; "str2"];
A2 = ["str3"; "str4"];
A3 = ["str5"; "str6"];
C = horzcat(A1,A2,A3)
C = 2x3 string
    "str1"    "str3"    "str5"
    "str2"    "str4"    "str6"

두 개의 행렬을 포함하는 셀형 배열을 만듭니다. 셀형 배열의 행렬을 하나의 행렬로 가로 결합합니다.

M1 = [1 2; 3 4];
M2 = [5 6 7; 8 9 10];
A1 = {M1,M2};
C = horzcat(A1{:})
C = 2×5

     1     2     5     6     7
     3     4     8     9    10

입력 인수

모두 축소

첫 번째 입력값으로, 스칼라, 벡터, 행렬, 다차원 배열, table형 또는 timetable형으로 지정됩니다.

두 번째 입력값으로, 스칼라, 벡터, 행렬, 다차원 배열, table형 또는 timetable형으로 지정됩니다.

  • B의 요소는 두 번째 차원을 따라 첫 번째 입력값의 끝에 결합됩니다. 입력 인수는 크기가 서로 호환되어야 합니다. 예를 들어, 첫 번째 입력값이 크기가 3×2인 행렬이면 B는 행이 3개여야 합니다.

  • 모든 table형 입력값은 고유한 변수 이름을 가져야 합니다. 행 이름은(있는 경우) 순서 무관하게 동일해야 합니다.

  • 모든 timetable형 입력값은 행 시간값이 동일해야 하고 모든 열은 이름이 서로 달라야 합니다.

  • 서로 다른 유형의 유효한 조합을 결합할 수 있습니다. 자세한 내용은 서로 다른 클래스(데이터형)의 유효한 결합 항목을 참조하십시오.

입력값 목록으로, 결합할 요소들이 지정된 순서에 따라 쉼표로 구분된 목록으로 지정됩니다.

  • 입력값은 서로 호환되는 크기를 가져야 합니다. 예를 들어, A1이 길이가 m인 열 벡터이면 나머지 입력값은 가로로 결합하려는 경우 각각 m개의 행을 가져야 합니다.

  • 모든 table형 입력값은 고유한 변수 이름을 가져야 합니다. 행 이름은(있는 경우) 순서 무관하게 동일해야 합니다.

  • 모든 timetable형 입력값은 행 시간값이 동일해야 하고 모든 열은 이름이 서로 달라야 합니다.

  • 서로 다른 유형의 유효한 조합을 결합할 수 있습니다. 자세한 내용은 서로 다른 클래스(데이터형)의 유효한 결합 항목을 참조하십시오.

  • string형, 문자형 벡터 또는 문자형 벡터로 구성된 셀형 배열을 가로로 결합하여 텍스트를 생성하려면 strcat 함수를 사용하십시오.

  • 문자형 벡터로 구성된 셀형 배열 또는 string형 배열에서 하나의 구분된 텍스트를 생성하려면 strjoin 함수를 사용하십시오.

알고리즘

테이블 입력값의 경우 horzcat는 행 이름이 존재하는 경우 행 이름을 일치시켜 결합하고 행 이름이 없는 경우 테이블 위치를 일치시켜 결합합니다. horzcat는 출력값의 Description 속성값과 UserData 속성값을 입력값의 대응되는 속성의 첫 번째 비어 있지 않은 값을 사용하여 할당합니다.

비어 있는 배열을 비어 있지 않은 배열에 결합하는 경우, horzcat은 비어 있는 배열을 빼고 출력합니다. 예를 들어, horzcat([1 2],[])은 행 벡터 [1 2]를 반환합니다.

모든 입력 인수가 비어 있고 서로 호환되는 크기를 가지면 horzcat는 입력값이 비어 있지 않은 경우의 출력값 크기와 동일한 크기를 갖는 비어 있는 배열을 반환합니다. 예를 들어, horzcat(zeros(0,1),zeros(0,2))는 0×3의 빈 배열을 반환합니다. 입력값의 크기가 호환되지 않는 경우 horzcat는 비어 있는 0×0 배열을 반환합니다.

확장 기능

C/C++ 코드 생성
MATLAB® Coder™를 사용하여 C 코드나 C++ 코드를 생성할 수 있습니다.

버전 내역

R2006a 이전에 개발됨