Преобразуйте векторы в индексы
[ind,n] = vec2ind(vec)
ind2vec
и vec2ind
позвольте индексам быть представленными или собой или как векторы, содержащие 1 в строке индекса, который они представляют.
[ind,n] = vec2ind(vec)
берет один аргумент,
vec | Матрица векторов, каждый содержащий один 1 |
и возвращается
ind | Индексы 1 с |
n | Количество строк в vec |
Здесь три вектора преобразованы в индексы и назад при сохранении количества строк.
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 = 4
vec2 = full(ind2vec(ind,n))
vec2 = 0 1 0 0 0 1 1 0 0 0 0 0