フィルターのクリア

matrix and binary bits

3 ビュー (過去 30 日間)
athpapa -
athpapa - 2011 年 11 月 13 日
I have a matrix that I use it like an index, for example: A=[1 3 2 4 1 3] which points to a matrix which represents binary bits B=[00 01 11 10]. How can I produce these bits (like decimal numbers of course) but in a single line matrix (e.g. 0 0 1 1 0 1 1 0 0 0 1 1)? I mean I want: C=B(1) gives me 0 0, C=B(2) gives me 0 1 and so on...
Thank you..

採用された回答

Walter Roberson
Walter Roberson 2011 年 11 月 13 日
It is not possible to do what you want. There is no data type in MATLAB with which you can supply a single index and get out a vector of numeric values using () subscripting. Cell arrays come close, but when you use () subscripting with them, you get out a cell array that contains the vector, rather than the vector itself. You can use {} subscripting with a cell array to "unwrap" the cell array from the vector:
B={{0 0} {0 1} {1 1} {1 0}};
C = B{1};
But really it is easier to use straight arrays and appropriate indexing:
B = [0 0; 0 1; 1 1; 1 0];
C = B[1,:];
  1 件のコメント
athpapa -
athpapa - 2011 年 11 月 13 日
thanx for your help...

サインインしてコメントする。

その他の回答 (2 件)

bym
bym 2011 年 11 月 13 日
dec2bin([1:5])
ans =
001
010
011
100
101
  1 件のコメント
athpapa -
athpapa - 2011 年 11 月 13 日
I don't want this. I just want the first matrix A to point in the second matrix B which has binary bits but in demical numbers. B=[00 01 11 10]. And when I type C=B(1) to give me the first two zeros, when type B(2) the zero and one and so on...Do you know how can I do this?

サインインしてコメントする。


Fangjun Jiang
Fangjun Jiang 2011 年 11 月 13 日
B=[00 01 11 10];
C=num2str(B','%02d');
or
i=1;
C=sprintf('%02d',B(i));
  2 件のコメント
athpapa -
athpapa - 2011 年 11 月 13 日
Is it possible to do this with integers and not strings?Because I need integers (numbers) and not strings...
Fangjun Jiang
Fangjun Jiang 2011 年 11 月 13 日
After the code above, use str2num([C(:)]), or uint8(str2num([C(:)]))

サインインしてコメントする。

タグ

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by