在R中生成一个20位数字

bob*_*et1 2 random r

我想用R生成一个随机的20位数字.

我的第一次尝试就是这样做

runif(1,10000000000000000000,9999999999999999999)
Run Code Online (Sandbox Code Playgroud)

但这似乎不起作用,因为R将9999999999999999999四舍五入到10000000000000000000.它似乎不接受"9999"数字,直到我下降到15位数:

> 9999999999999999999
[1] 10000000000000000000
> 999999999999999999
[1] 1000000000000000000
> 99999999999999999
[1] 100000000000000000
> 9999999999999999
[1] 10000000000000000
> 999999999999999
[1]  999999999999999
> 99999999999999
[1]  99999999999999
> 9999999999999
[1]  9999999999999
Run Code Online (Sandbox Code Playgroud)

有没有更好的方法来解决这个问题?

Vin*_*ynd 8

您可以将此数字生成为字符串:

paste( sample( 0:9, 20, replace=TRUE ), collapse="" )
# [1] "40910135645767200675"
Run Code Online (Sandbox Code Playgroud)

  • 几乎,你忘了前面的0:`paste(c(样本(1:9,1),样本(0:9,19,replace = TRUE)),collapse ="") (7认同)