NumericConstants
位于 base
包(package)。 说明
如何R解析数字常量。
细节
R以与 C99 浮点常量非常相似的方式解析其输入中的数字常量。
Inf
和 NaN
是数字常量(带有 typeof(.) "double"
)。在文本输入中(例如,在 scan
和 as.double
中),这些被识别为忽略大小写,就像 infinity
作为 Inf
的替代。 NA_real_
和 NA_integer_
是 "double"
和 "integer"
类型的常量,表示缺失值。所有其他数字常量都以数字或句点开头,并且是十进制或十六进制常量,可选后跟 L
。
十六进制常量以 0x
或 0X
开头,后跟来自 0-9 a-f A-F .
的非空序列,该序列被解释为十六进制数,可以选择后跟二进制指数。二进制指数由 P
或 p
组成,后跟可选的加号或减号,后跟非空(十进制)数字序列,并表示乘以 2 的幂。因此 0x123p456
是 。
十进制常量由非空数字序列组成,其中可能包含句点(小数点),后面可以选择跟随十进制指数。十进制指数由 E
或 e
组成,后跟可选的加号或减号,后跟非空数字序列,表示乘以 10 的幂。
太大或太小而无法表示的值将溢出到 Inf
或下溢到 0.0
。
紧跟i
的数字常量被视为虚数complex。
如果可能的话,紧跟 L
的数字常量被视为 integer
数字(如果它包含 "."
,则会出现警告)。
即使在具有其他数字表示形式的语言中,也只有 ASCII 数字 0-9 被识别为数字。 “小数分隔符”始终是句点而不是逗号。
请注意,解析器不会将前导加号或减号视为数值常量的一部分,而是将其视为应用于该常量的一元运算符。
注意
当解析字符串以输入数字常量时,该数字可能会也可能不会完全用所使用的 C double 类型表示。如果不是,将返回最接近的可表示数字之一。
R自己的 C 代码用于将常量转换为二进制数,因此在所有实现完整 IEC 600559 算术的平台上,效果预计是相同的(最可能的差异是处理小于.Machine$double.xmin
)。使用相同的代码scan
.
例子
## You can create numbers using fixed or scientific formatting.
2.1
2.1e10
-2.1E-10
## The resulting objects have class numeric and type double.
class(2.1)
typeof(2.1)
## This holds even if what you typed looked like an integer.
class(2)
typeof(2)
## If you actually wanted integers, use an "L" suffix.
class(2L)
typeof(2L)
## These are equal but not identical
2 == 2L
identical(2, 2L)
## You can write numbers between 0 and 1 without a leading "0"
## (but typically this makes code harder to read)
.1234
sqrt(1i) # remember elementary math?
utils::str(0xA0)
identical(1L, as.integer(1))
## You can combine the "0x" prefix with the "L" suffix :
identical(0xFL, as.integer(15))
也可以看看
Syntax
。对于复数,请参见complex
.Quotes
对于字符常量的解析,Reserved
对于“reserved words”R.
相关用法
- R NotYet 尚未实现的函数和未使用的参数
- R NULL 空对象
- R NA “不可用”/缺失值
- R file.path 构造文件路径
- R grep 模式匹配和替换
- R getwd 获取或设置工作目录
- R vector 向量 - 创建、强制等
- R lapply 对列表或向量应用函数
- R dump R 对象的文本表示
- R Sys.getenv 获取环境变量
- R rank 样本排名
- R getDLLRegisteredRoutines DLL 中 C/Fortran 例程的反射信息
- R pushBack 将文本推回连接
- R strsplit 分割字符向量的元素
- R seq.Date 生成规则的日期序列
- R invisible 将打印模式更改为不可见
- R noquote “无引号”字符串打印类
- R warning 警告信息
- R rapply 递归地将函数应用于列表
- R basename 操作文件路径
- R with 评估数据环境中的表达式
- R formals 访问和操纵形式参数
- R icuSetCollate 按 ICU 设置整理
- R search 给出 R 对象的搜索路径
- R Defunct 将对象标记为已失效
注:本文由纯净天空筛选整理自R-devel大神的英文原创作品 Numeric Constants。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。