将两列位合并为一列

时间:2015-08-20 14:56:56

标签: arrays matlab

在Matlab中,如何将两列中的两位(每列由一位组成)合并为一列,例如:

X = [1,0;0,1;1,1;0,0;1,1;0,0]

期望的结果是:

X = [10;01;11;00;11;00]

2 个答案:

答案 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])