Combining two or more elements of vectors into 1
2 ビュー (過去 30 日間)
古いコメントを表示
***This is for encoding of convolutional code***
I have the following vectors, all of them are 1x7 in size
p = 1 0 0 1 1 1 0
q = 1 1 0 1 0 0 1
r = 1 0 1 0 0 1 1
I want to make the following vector 1x7 in size
z = 111 010 001 110 100 101 011
Each element of z is the 3 bits of p,q,r of the same position as a whole bit. If I am not wrong, this is called multiplexing.
Can anyone help how to do it in MATLAB R2021a?
Thank you.
0 件のコメント
回答 (2 件)
Davide Masiello
2022 年 4 月 7 日
編集済み: Davide Masiello
2022 年 4 月 7 日
The problem I see is that z cannot be an array of doubles, since 010 and 001 would be just 10 and 1 respectively. You could try and store the bits in a cell array.
clear,clc
p = [1 0 0 1 1 1 0];
q = [1 1 0 1 0 0 1];
r = [1 0 1 0 0 1 1];
z = [p;q;r];
z = mat2cell(z',ones(1,size(z,2)),3)'
0 件のコメント
参考
カテゴリ
Help Center および File Exchange で Logical についてさらに検索
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!