Я никогда не использовал R, поэтому я не знаю, в этом ли проблема, но в других языках, таких как C / C ++, число типа 1.4999999999999999 представляется как число с плавающей запятой или двойное число.
Поскольку они имеют конечную точность, вы не можете точно представить что-то вроде 1.4999999999999999. Это может быть случай, когда 1.4999999999999999 фактически сохраняется как 1.50000000000000 из-за ограничений точности с плавающей запятой.