我想在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]
答案 0 :(得分:2)
out=zeros(size(input,1),max(input));
for i=1:size(input,1)
out(i,input(i))=1;
end
使用此假设输入是列向量。