Какие типы данных мы должны обрабатывать большие числа в R? По умолчанию размер целых чисел составляет 32 бит, поэтому большие числа из sql-сервера, а также любые большие числа, переданные из python через rpy2, становятся искалеченными.
> 123456789123
[1] 123456789123
> 1234567891234
[1] 1.234568e+12
При чтении значения bigint 123456789123456789 с использованием RODBC он возвращается как 123456789123456784 (см. последнюю цифру), и тот же номер при десериализации через RJSONIO возвращается как -1395630315L (что кажется дополнительной ошибкой/ограничением RJSONIO).
> fromJSON('[1234567891]')
[1] 1234567891
> fromJSON('[12345678912]')
[1] -539222976
На самом деле, мне нужно иметь возможность обрабатывать большие числа, поступающие из JSON, поэтому с ограничением RJSONIO у меня может не быть обходного пути, кроме как найти лучшую библиотеку JSON (которая сейчас кажется нецелевой). Я хотел бы услышать, что эксперты говорят об этом, а также в целом.