为什么nchar为R中的大数值变量返回错误的值?

根据我的理解,输入应该转换为字符而不指定

“x = …字符向量,或者要强制转换为字符向量的向量”

nchar(2015122514204000000)
# 18 
nchar("2015122514204000000")
# 19 

# Replacing the end zeroes with 111111
nchar(2015122514204111111)
# 19
最佳答案
它正在做以下事情:

as.character(2015122514204000000)
"2.015122514204e+18"

nchar("2.015122514204e+18")

是18岁.

尝试例如选项(scipen = 999)以防止科学记数法,而nchar(2015122514204000000)将返回19.希望这有帮助!

转载注明原文:为什么nchar为R中的大数值变量返回错误的值? - 代码日志