在 R 里面 numeric 类型包含了很多子类型,其中最常见的就是 double 和 integer, 但因为最常用的是 double, 除非你特别标明是 integer (用 as.integer), 系统都会认为是 double。
那为什么要有 integer 这个类型呢? 一是为了存储和计算更省空间,更主要的还是为了和其他语言保持一致,这样当你和 C 语言, Fortran 语言写接口的时候, integer 就对照他们里面的 int。
integer是整数,numeric浮点数;integer占用内存比numeric少,所以在数据稍微大的时候,检查是否numeric数据能转换为integer可以节省内存