MATLAB: Complex number inside cell array

cell arraycomplex number

Hi all,
I have a cell array and inside each cell i have 26 complex number with imaginary part starting from 0 until 5000.
I want to keep only the complex numbers with imaginary part from 1000 until 3000. But i want to keep it as a complex number and not seperate the real part from the imaginary part.
Is it possible?
Thank you
Ilias

Best Answer

This might be done better with a loop, but here is a method using cellfun
c = your cell array containing complex numbers
result = cellfun(@(x)x(imag(x)>=1000 & imag(x)<=3000),c,'uni',false);