주요 콘텐츠

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 = 1×3 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 = 2×3 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형 입력값은 고유한 변수 이름을 가져야 합니다. table형 입력값에 행 이름이 존재하는 경우 그 이름들은 동일해야 하지만 순서는 다를 수 있습니다. horzcat는 행 이름이 존재하는 경우 행 이름을 일치시켜 결합하고 행 이름이 없는 경우 테이블 위치를 일치시켜 결합합니다. table형 입력값의 경우 horzcat는 테이블 변수와 관련된 속성값도 결합합니다. 출력 테이블의 다른 속성값은 대응하는 입력값의 비어 있지 않은(또는 디폴트가 아닌) 첫 번째 속성값을 사용하여 할당됩니다.

  • 모든 timetable형 입력값은 고유한 변수 이름을 가져야 합니다. 각 timetable형 입력값의 행 시간값은 동일해야 하지만 순서는 다를 수 있습니다. horzcat는 행 시간값을 일치시켜 결합합니다. timetable형 입력값의 경우 horzcat는 타임테이블 변수에 관련된 속성값과, 입력값에 연결되어 있는 이벤트도 결합합니다. 출력 타임테이블의 다른 속성값은 대응하는 입력값의 비어 있지 않은(또는 디폴트가 아닌) 첫 번째 속성값을 사용하여 할당됩니다.

  • 서로 다른 유형의 유효한 조합을 결합할 수 있습니다. 문자형 배열, 논리형 배열, 숫자형을 결합하는 방법에 대한 자세한 내용은 서로 다른 클래스(데이터형)의 유효한 결합 항목을 참조하십시오.

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

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

  • 모든 table형 입력값은 고유한 변수 이름을 가져야 합니다. table형 입력값에 행 이름이 존재하는 경우 그 이름들은 동일해야 하지만 순서는 다를 수 있습니다. horzcat는 행 이름이 존재하는 경우 행 이름을 일치시켜 결합하고 행 이름이 없는 경우 테이블 위치를 일치시켜 결합합니다. table형 입력값의 경우 horzcat는 테이블 변수와 관련된 속성값도 결합합니다. 출력 테이블의 다른 속성값은 대응하는 입력값의 비어 있지 않은(또는 디폴트가 아닌) 첫 번째 속성값을 사용하여 할당됩니다.

  • 모든 timetable형 입력값은 고유한 변수 이름을 가져야 합니다. 각 timetable형 입력값의 행 시간값은 동일해야 하지만 순서는 다를 수 있습니다. horzcat는 행 시간값을 일치시켜 결합합니다. timetable형 입력값의 경우 horzcat는 타임테이블 변수에 관련된 속성값과, 입력값에 연결되어 있는 이벤트도 결합합니다. 출력 타임테이블의 다른 속성값은 대응하는 입력값의 비어 있지 않은(또는 디폴트가 아닌) 첫 번째 속성값을 사용하여 할당됩니다.

  • 서로 다른 유형의 유효한 조합을 결합할 수 있습니다. 문자형 배열, 논리형 배열, 숫자형을 결합하는 방법에 대한 자세한 내용은 서로 다른 클래스(데이터형)의 유효한 결합 항목을 참조하십시오.

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

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

알고리즘

비어 있는 배열을 비어 있지 않은 배열에 결합하는 경우, 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 이전에 개발됨