如何将所有列中的所有1替换为该列的编号?我可以逐列完成:
输出(输出(:,3)== 1,3)= 3;
输出(输出(:,4)== 1,4)= 4;
输出(输出(:,5)== 1,5)= 5;
等...
但我觉得这对每一个专栏都是傻瓜。应该有办法一次性完成所有这些吗?
答案 0 :(得分:4)
您可以使用FIND:
[rowIdx,colIdx] = find(output==1);
output(output==1) = colIdx;
答案 1 :(得分:1)
我不太了解你要做的事情,但你可以使用MATLAB 来实现循环。
for i=1:numberOfColumns,
output(:,i) = i;
end
这有点像你在追求......?
修改强>
for x=1:numberOfRows,
for y=1:numberOfColumns,
if output(x, y) == 1
output(x, y) == y
end
end
end
顺便说一句,我的列/行可能是错误的,因为我不记得MATLAB代表它的基质的方式!