Похоже, что это предел точности, присущей самой R.Обратите внимание:
x <- 1544018118438041139
as.character(x)
[1] "1544018118438041088"
Итак, я не уверен, что пакет jsonlite
ответственен за эту ошибку округления.Исходя из комментария @Konrad, это предел точности для типа данных IEEE.
Существует обходной путь, если все, что вы хотите сделать, это сохранить цифры в исходном номере.Вместо этого вы можете обрабатывать данные как строку:
'["1544018118438041139",162.0,38.0,0.023529414,1.0,2131230815,1]'
Тогда, предположительно, jsonlite
будет читать «число» как строку, без каких-либо проблем с точностью.Но тогда у вас все еще будет проблема, если вы решите привести к числовому типу в R и выполнить с ним математику.