Is the difference between 13982.017 and 13989.3135 ?
For an accumulation of 46 million entries, I guess this is expected due to floating point imprecisions.
If you want more precision, you can use .double() to get double precision numbers for which the accuracy is greater (from 6 significant digits to 12).