runif64: integer64: random numbers

Description Usage Arguments Details Value Author(s) See Also Examples

View source: R/hash64.R

Description

Create uniform random 64-bit integers within defined range

Usage

1

Arguments

n

length of return vector

min

lower inclusive bound for random numbers

max

upper inclusive bound for random numbers

replace

set to FALSE for sampleing from a finite pool, see sample

Details

For each random integer we call R's internal C interface unif_rand() twice. Each call is mapped to 2^32 unsigned integers. The two 32-bit patterns are concatenated to form the new integer64. This process is repeated until the result is not a NA_INTEGER64.

Value

a integer64 vector

Author(s)

Jens Oehlschlägel <Jens.Oehlschlaegel@truecluster.com>

See Also

runif, hashfun

Examples

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
  runif64(12)
  runif64(12, -16, 16)
  runif64(12, 0, as.integer64(2^60)-1)  # not 2^60-1 !
  var(runif(1e4))
  var(as.double(runif64(1e4, 0, 2^40))/2^40)  # ~ = 1/12 = .08333

  table(sample(16, replace=FALSE))
  table(runif64(16, 1, 16, replace=FALSE))
  table(sample(16, replace=TRUE))
  table(runif64(16, 1, 16, replace=TRUE))

Example output

Loading required package: bit

Attaching package:bitThe following object is masked frompackage:base:

    xor

Attaching package bit64
package:bit64 (c) 2011-2017 Jens Oehlschlaegel
creators: integer64 runif64 seq :
coercion: as.integer64 as.vector as.logical as.integer as.double as.character as.bitstring
logical operator: ! & | xor != == < <= >= >
arithmetic operator: + - * / %/% %% ^
math: sign abs sqrt log log2 log10
math: floor ceiling trunc round
querying: is.integer64 is.vector [is.atomic} [length] format print str
values: is.na is.nan is.finite is.infinite
aggregation: any all min max range sum prod
cumulation: diff cummin cummax cumsum cumprod
access: length<- [ [<- [[ [[<-
combine: c rep cbind rbind as.data.frame
WARNING don't use as subscripts
WARNING semantics differ from integer
for more help type ?bit64

Attaching package:bit64The following objects are masked frompackage:base:

    :, %in%, is.double, match, order, rank

integer64
 [1] 2294380315572898759  -2822386010932617694 9091387110124089933 
 [4] -5286496093141725349 4257730952285763297  -6237727915299162168
 [7] -5851339940848374561 3445124979186902524  -7381195515451320888
[10] 8681375796314779615  -5721869735650798256 1093754371783053699 
integer64
 [1] -13 -10 10  -15 -5  7   1   7   -5  -7  0   -7 
integer64
 [1] 720961133535215846 303823581203269861 302771674715977331 46706259418449217 
 [5] 668957022423243428 814397828142160069 493299669251030133 928509290350600189
 [9] 407040608158510952 173863229215307710 555037300913277371 216661864307588184
[1] 0.08348684
[1] 0.08125748

 1  2  3  4  5  6  7  8  9 10 11 12 13 14 15 16 
 1  1  1  1  1  1  1  1  1  1  1  1  1  1  1  1 

 1  2  3  4  5  7  9 10 12 14 16 
 2  1  1  1  2  1  1  3  1  1  2 

 1  2  6  7  8 12 13 14 15 16 
 2  2  1  1  1  1  1  2  4  1 

 1  2  4  5  7  8  9 13 16 
 2  3  1  2  1  2  1  2  2 

bit64 documentation built on Aug. 30, 2020, 9:07 a.m.