根据我的理解,输入应转换为字符而不指定
" x = ...字符向量,或强制转换为字符向量的向量"
nchar(2015122514204000000)
# 18
nchar("2015122514204000000")
# 19
# Replacing the end zeroes with 111111
nchar(2015122514204111111)
# 19
答案 0 :(得分:6)
它正在执行以下操作:
as.character(2015122514204000000)
"2.015122514204e+18"
和
nchar("2.015122514204e+18")
是18岁。
尝试例如options(scipen=999)
以防止科学记数法,nchar(2015122514204000000)
将返回19
。希望这有帮助!
答案 1 :(得分:4)
我相信这就是发生的事情:
> as.character(2015122514204000000)
[1] "2.015122514204e+18"
> nchar(as.character(2015122514204000000))
[1] 18