from timeit import timeit
timeit('factarr*cplxarr.real+(1j)*cplxarr.imag', setup=
    'from __main__ import factarr,cplxarr')
timeit('f(cplxarr.real * factarr, cplxarr.imag)', setup=
    'from __main__ import factarr,cplxarr; import numpy as np; f=np.vectorize(np.complex)'
    )
Scale the real part of complex numpy array