# how to perform Many to one mapping

2 views (last 30 days)
Jyothi Alugolu on 20 Mar 2017
Commented: Walter Roberson on 27 Mar 2017
hello,
i am having a bit string (say 'a') of size 756*1...and another bit string (say b) of size 576*1...now, i want many to one mapping to be performed on this bit string..
for example: the operation to be performed is shown below
b(k)= a(j) j=1....756, k= j mod 576...
Guillaume on 20 Mar 2017
k cannot be j mod 576 as this would produce zero indices. k could be ((j-1) mod 576)+1

Walter Roberson on 20 Mar 2017
Afterwards, should b(1) be assigned the value of a(1), or should it be assigned the value of a(577) ?
Walter Roberson on 27 Mar 2017
What you ask for is not possible. It is meaningless to apply fft to a many-to-one mapping.

Guillaume on 20 Mar 2017
Is this what you're after? (I'm unclear on the result you want to obtain)
a = randi([0 1], 756, 1); %random demo data
b = randi([0 1], 576, 1); %does the content of b matter?
b = accumarray(mod(0:numel(a)-1, numel(b))'+1, a, [], @(bits) {bits})