Преобразуйте индексы в векторы
ind2vec(ind)
ind2vec(ind,N)
ind2vec и vec2ind разрешить представление индексов либо самостоятельно, либо в виде векторов, содержащих 1 в строке индекса, который они представляют.
ind2vec(ind) принимает один аргумент,
ind | Вектор-строка индексов |
и возвращает разреженную матрицу векторов с одним 1 в каждом столбце, как обозначено ind.
ind2vec(ind,N) возвращает N-by- M матрица, где N может быть равен или больше максимального индекса.
Здесь четыре индекса заданы и преобразованы в векторное представление.
ind = [1 3 2 3]; vec = ind2vec(ind)
vec = (1,1) 1 (3,2) 1 (2,3) 1 (3,4) 1
Здесь вектор со всеми нулями в последней строке преобразуется в индексы и назад, сохраняя при этом количество строк.
vec = [0 0 1 0; 1 0 0 0; 0 1 0 0]'
vec =
0 1 0
0 0 1
1 0 0
0 0 0[ind,n] = vec2ind(vec)
ind =
3 1 2
n =
4vec2 = full(ind2vec(ind,n))
vec2 =
0 1 0
0 0 1
1 0 0
0 0 0