在Matlab中,如何将两列中的两位(每列由一位组成)合并为一列,例如:
X = [1,0;0,1;1,1;0,0;1,1;0,0]
期望的结果是:
X = [10;01;11;00;11;00]
答案 0 :(得分:2)
一个简单的解决方案是:
b = char(X+48)
如果 char数组不方便,可以将其转换为单元格数组:
bcell = cellstr(b)
答案 1 :(得分:1)
我在这里可能觉得太容易了,但是这个怎么样:
10*X(:,1)+X(:,2)
请注意,它实际上不会显示像01这样的内容,因为它简化为1。
如果你真的想要显示01,你可能需要将其作为文本处理:
Y=num2str(X)
Y(:,[1 end])