how to create binary matrix in matlab
이전 댓글 표시
hello,
I'm wondering how to create a binary matrix in matlab
and how to convert a matrix from decimal to binary and from binary to decimal
댓글 수: 4
James Tursa
2019년 4월 25일
Please give a short example of what you mean by decimal and binary matrix, and what the conversion would be for this example.
Abdelmalek Benaimeur
2019년 4월 25일
Erick Huelsz
2022년 5월 11일
I am sure there must be an easier way, but so far I managed to do this with the info I found:
D=[1,2,3,4,5]
l=length(D)
for i=1:l
bin = '0000000000';
bin = [bin dec2bin(D(i))];
b=(bin(end-l+1:end))=='1';
M(i,1:l)=b;
end
M
Erick Huelsz
2022년 5월 11일
편집: Erick Huelsz
2022년 5월 11일
yeah, there was a little easier way:
D2=[1,2,3,4,5]
l=length(D2)
for i=1:l
b=dec2bin(D2(i))
b=b-48
M2(i,l+1-length(b):l)=b
end
채택된 답변
추가 답변 (2개)
James Tursa
2019년 4월 25일
편집: James Tursa
2019년 4월 25일
>> dec=[1;2;3;4;5];
>> bin = dec2bin(dec,4)
bin =
0001
0010
0011
0100
0101
>> bin2dec(bin)
ans =
1
2
3
4
5
댓글 수: 5
Abdelmalek Benaimeur
2019년 4월 25일
Abdelmalek Benaimeur
2019년 4월 25일
James Tursa
2019년 4월 25일
편집: James Tursa
2019년 4월 25일
How is A in your example above a double? Do you mean you want to input it as written above where 0010 would be "ten" as a double, but then turn around and re-interpret it as a binary character array? I.e., something like this?
bin = reshape(sprintf('%04d',A),4,[])'
Abdelmalek Benaimeur
2019년 4월 25일
James Tursa
2019년 4월 25일
편집: James Tursa
2019년 4월 25일
I assume by binary you really mean logical. Then simply
bin = (bin == '1')
Abdelmalek Benaimeur
2019년 4월 25일
0 개 추천
댓글 수: 1
KALYAN ACHARJYA
2019년 4월 25일
This is logical representation, all elements of a, which are less than 3 are true (1) and others false. Please response on @James Tursa comment
카테고리
도움말 센터 및 File Exchange에서 Resizing and Reshaping Matrices에 대해 자세히 알아보기
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!