如何在Matlab中转换十进制值数组?

时间:2018-05-03 17:03:19

标签: matlab

我想在matlab中将[1,2,3,4]改为[1 0 0 0; 0 1 0 0; 0 0 1 0; 0 0 0 1],实现这个目的是什么?< / p>

假设:

[1,2,3,4]

我需要:

[1 0 0 0;0 1 0 0;0 0 1 0;0 0 0 1]

1 个答案:

答案 0 :(得分:2)

out=zeros(size(input,1),max(input));
for i=1:size(input,1)
  out(i,input(i))=1;
end

使用此假设输入是列向量。