horzcat

Конкатенация массивов горизонтально

Синтаксис

C = horzcat(A,B)
C = horzcat(A1,A2,…,An)

Описание

пример

C = horzcat(A,B) конкатенирует B горизонтально в конец A, когда A и B имеют совместимые размеры (продолжительности соответствия размерностей кроме второго измерения).

пример

C = horzcat(A1,A2,…,An) конкатенирует A1, A2, …, An горизонтально.

horzcat эквивалентен использованию квадратных скобок для того, чтобы горизонтально конкатенировать массивы. Например, [A,B] или [A B] равны horzcat(A,B), когда A и B являются совместимыми массивами.

Примеры

свернуть все

Создайте две матрицы и конкатенируйте их горизонтально, сначала при помощи обозначения квадратной скобки, и затем при помощи horzcat.

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

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

     1     2     4     5     6
     3     4     7     8     9

Создайте таблицу 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   

Создайте таблицу 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'   

Горизонтально конкатенируйте A и B. Порядок строк в 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'   

Конкатенация вектора символов даты, даты строки и 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 array
   24-Mar-2016   19-Apr-2016   10-May-2016

Конкатенация трех строковых массивов в единый массив.

A1 = ["str1"; "str2"];
A2 = ["str3"; "str4"];
A3 = ["str5"; "str6"];
C = horzcat(A1,A2,A3)
C = 2x3 string array
    "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

Входные параметры

свернуть все

Сначала введите, заданный как скаляр, вектор, матрица, многомерный массив, таблица или расписание.

Второй вход, заданный как скаляр, вектор, матрица, многомерный массив, таблица или расписание.

  • Элементы B конкатенированы в конец первого входа вдоль второго измерения. Размеры входных параметров должны быть совместимыми. Например, если первый вход является матрицей размера 3 2, то B должен иметь 3 строки.

  • Все табличные входные параметры должны иметь уникальные имена переменных. Когда существующий, имена строки должны быть идентичными, за исключением порядка.

  • Все входные параметры расписания должны иметь те же времена строки, и все столбцы должны иметь различные имена.

  • Можно конкатенировать допустимые комбинации различных типов. Для получения дополнительной информации смотрите Допустимые Комбинации в отличие от Классов.

Список входных параметров, заданных как список, разделенный запятыми элементов, чтобы конкатенировать в порядке, они заданы.

  • Входные параметры должны иметь совместимые размеры. Например, если A1 является вектор-столбцом длины m, то остающиеся входные параметры должны каждый иметь строки m, чтобы конкатенировать горизонтально.

  • Все табличные входные параметры должны иметь уникальные имена переменных. Когда существующий, имена строки должны быть идентичными, за исключением порядка.

  • Все входные параметры расписания должны иметь те же времена строки, и все столбцы должны иметь различные имена.

  • Можно конкатенировать допустимые комбинации различных типов. Для получения дополнительной информации смотрите Допустимые Комбинации в отличие от Классов.

Советы

  • Чтобы создать текст путем горизонтальной конкатенации строк, векторы символов или массивы ячеек из символьных векторов, используют функцию strcat.

  • Чтобы создать одну часть разделенного текста от массива ячеек из символьных векторов или массива строк, используйте функцию 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++
Генерация кода C и C++ с помощью MATLAB® Coder™.

Представлено до R2006a