vec2mat

Преобразуйте вектор в матрицу

Описание

пример

mat = vec2mat(vec,matcol) преобразует векторный vec матрицировать mat с matcol столбцы. Функция создает матрицу одна строка за один раз, заполняя строки элементами от vec в порядке. Если длина vec не кратное matcol, затем функция заполняет последнюю строку mat с нулями, пока строка не содержит matcol элементы.

пример

mat = vec2mat(vec,matcol,padding) задает значения для функции, чтобы использовать, чтобы заполнить последнюю строку mat. Функция использует значение от padding в порядке.

пример

[mat,padded] = vec2mat(___) также возвращает padded, количество заполненных элементов в последней строке mat. Можно задать любую из комбинаций входных аргументов от предыдущих синтаксисов.

Примечание

vec2mat похоже на функцию MATLAB® reshape. Однако, учитывая векторный вход, reshape создает его соответствующую матрицу один столбец за один раз (вместо одной строки за один раз). Кроме того, reshape требует, чтобы его массивы ввода и вывода имели то же число элементов, тогда как vec2mat заполняет его выходную матрицу при необходимости.

Примеры

свернуть все

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

vec = [1,2,3,4,5];

Преобразуйте вектор в матрицу 2D столбца. Повторите преобразование для с тремя столбцами и матрицы с четырьмя столбцами соответственно. Отобразите каждую получившуюся матрицу.

twoColumnMatrix = vec2mat(vec,2)
twoColumnMatrix = 3×2

     1     2
     3     4
     5     0

threeColumnMatrix = vec2mat(vec,3)
threeColumnMatrix = 2×3

     1     2     3
     4     5     0

fourColumnMatrix = vec2mat(vec,4)
fourColumnMatrix = 2×4

     1     2     3     4
     5     0     0     0

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

vec = 1:5;

Задайте ненулевое дополнительное значение. Преобразуйте вектор в матрицу с четырьмя столбцами, задав ненулевое дополнительное значение.

paddingValue = NaN;
mat = vec2mat(vec,4,paddingValue)
mat = 2×4

     1     2     3     4
     5   NaN   NaN   NaN

Задайте другое ненулевое дополнительное значение.

paddingValue = [10,8,6;9,7,5]
paddingValue = 2×3

    10     8     6
     9     7     5

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

mat2 = vec2mat(vec,3,paddingValue)
mat2 = 2×3

     1     2     3
     4     5    10

mat3 = vec2mat(vec,4,paddingValue)
mat3 = 2×4

     1     2     3     4
     5    10     9     8

Создайте числовой вектор с пятью элементами и матрицу дополнения значений.

vec = [1;2;3;4;5];
padding = [2,4;6,4];

Преобразуйте вектор в матрицу 2D столбца, задав дополнительные значения и возврат количества заполненных элементов. Повторите преобразование для с тремя столбцами и матрицы с четырьмя столбцами, соответственно. Отобразите каждую получившуюся матрицу.

[mat2,numPadded2] = vec2mat(vec,2,padding)
mat2 = 3×2

     1     2
     3     4
     5     2

numPadded2 = 1
[mat3,numPadded3] = vec2mat(vec,3,padding)
mat3 = 2×3

     1     2     3
     4     5     2

numPadded3 = 1
[mat4,numPadded4] = vec2mat(vec,4,padding)
mat4 = 2×4

     1     2     3     4
     5     2     6     4

numPadded4 = 3

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

свернуть все

Входной массив, заданный как вектор.

Типы данных: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64 | logical
Поддержка комплексного числа: Да

Количество столбцов для выходной матрицы mat, заданный как положительное целое число. Если длина vec не кратное matcol, затем функция заполняет последнюю строку mat с нулями, пока строка не содержит matcol элементы.

Типы данных: double

Дополнение значений для последней строки mat, заданный как вектор или матрица. padding введите наследовал тип данных vec входной параметр. Функция использует значения от padding в порядке. Если padding имеет меньше элементов, чем, что функция должна завершить последнюю строку mat, затем функция повторяет последний элемент padding до mat полно.

Выходные аргументы

свернуть все

Выходной массив, возвращенный как матрица с элементами от vec и наличие matcol столбцы. Выход наследовал тип данных входа. Количество строк равно, чтобы перекрыть (длина (vec)/matcol).

Количество заполненных элементов в последней строке mat, возвращенный как положительное целое число.

Смотрите также

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