2

如果我有这样的事情:

m = [0 1 0 0 1 1]

我想把它变成

s = '010011'

在 Python 中,这很简单:

m = [0, 1, 0, 0, 1, 1]
s = ''.join(m)
# s = '010011'

我如何在 MATLAB 中做到这一点?

4

2 回答 2

3

请记住,Python 会自动进行类型转换 - Matlab(和大多数其他语言)更挑剔一些。因此,您需要对数组的每个元素手动进行类型转换。我相信

myString = sprintf('%1d', m);

应该这样做 - 虽然我实际上无法检查它,因为我家里的电脑上没有 matlab。试试看 - 告诉我这是否不适合你。

于 2013-04-16T01:58:28.053 回答
1

我认为另一种方法可能是:

s=num2str(m);
s(s==' ')='';

或者

s=regexprep(num2str(m),'[^\w]','')
于 2013-04-16T02:04:25.110 回答