在Octave / Matlab中,如何将[1,2,4,8]转换为[1 1 0 1 0 0 0 1]?

时间:2013-12-08 17:35:25

标签: matlab octave

或者更一般地说,从1到n的整数列表为0和1的n维向量?

1 个答案:

答案 0 :(得分:3)

A = [ 1, 2, 4, 8];
B = false( 1,A(end) );
B(A) = true;

返回:

B =

     1     1     0     1     0     0     0     1

和可选:B = double(B)如果您需要双打。

或:

B = zeros( 1,A(end) );
B(A) = 1;

然而