Using reshape function i get wrong ans....

2 views (last 30 days)
b=[0,1,0,0,0,0,0,1,0,1,0,0,0,0,0,1,0,1,0,0,0,0,0,1,0,1,0,0,0,0,0,1];
>> SS=reshape(b,length(b)/8,8);
>> SS
SS =
0 0 0 0 0 0 0 0
1 0 1 0 1 0 1 0
0 0 0 0 0 0 0 0
0 1 0 1 0 1 0 1
bt i want to get
SS =
0 1 0 0 0 0 1 0
0 1 0 0 0 0 1 0
0 1 0 0 0 0 1 0
0 1 0 0 0 0 1 0
ie what my array b data.. thats i want to be in SS.. how i write code? Help me
  1 Comment
Jan
Jan on 18 May 2015
Where does the trailing zero column come from? It is not clear why the last and teh 2nd last column seem to have swapped.

Sign in to comment.

Accepted Answer

Andrei Bobrov
Andrei Bobrov on 18 May 2015
b=[0,1,0,0,0,0,0,1,0,1,0,0,0,0,0,1,0,1,0,0,0,0,0,1,0,1,0,0,0,0,0,1];
SS=reshape(b,8,[]);
SS([end,end-1],:) = SS([end-1,end],:);
SS = SS';
  6 Comments
ARJUN K P
ARJUN K P on 18 May 2015
Edited: ARJUN K P on 18 May 2015
sry its my mistake..
b=[0,1,0,0,0,0,0,1,0,1,0,0,0,0,0,1,0,1,0,0,0,0,0,1,0,1,0,0,0,0,0,1]; i want to group each 8 bits in array b.. that is i want my ans like
0 1 0 0 0 0 0 1
0 1 0 0 0 0 0 1
0 1 0 0 0 0 0 1
0 1 0 0 0 0 0 1
ARJUN K P
ARJUN K P on 18 May 2015
thanku all i got ans.... special thanks to Andrei Bobrov code is working

Sign in to comment.

More Answers (0)

Categories

Find more on Resizing and Reshaping Matrices in Help Center and File Exchange

Community Treasure Hunt

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

Start Hunting!