У меня происходит какой-то расчет, и я получаю следующее предупреждение (т.е. не ошибку):
Warning messages:
1: In sum(myvar, na.rm = T) :
Integer overflow - use sum(as.numeric(.))
В этой теме люди утверждают, что целочисленных переполнений просто не бывает. Либо R не слишком современен, либо они не правы. Однако, что я должен делать в этом случае? Если я использую as.numeric
, как советует предупреждение, я могу не учесть тот факт, что информация теряется гораздо раньше. myvar
считывается из .csv файла, так не должен ли R понять, что нужно какое-то большее поле? Может, оно уже что-то отрезает?
Какова максимальная длина integer
или numeric
? Может быть, вы посоветуете какой-нибудь другой тип поля / режим?
EDIT: Я запустил:
R версия 2.13.2 (2011-09-30) Платформа: x86_64-apple-darwin9.8.0/x86_64 (64-bit) внутри R Studio
Если c = a - b
переполнение, потому что a и b являются целыми числами, пробует следующее:
c = as.double(a - b)