sumankhanal

raku_rmultinom

Oct 14th, 2023
28
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Perl 0.50 KB | None | 0 0
  1. sub rmultinom(int32, CArray[num64], int32, CArray[int32])
  2.     is native( RMATH ) { * };
  3.  
  4. sub raku_rmultinom($n , $size, @prob is copy) is export {
  5.     @prob.append(0 xx $size - @prob);
  6.     @prob = @prob.map: {$_.Num};
  7.     my $prob = CArray[num64].new(@prob);
  8.     my $ints = CArray[int32].allocate($size);
  9.     rmultinom($n, $prob, $size, $ints);
  10.     return $ints.list
  11. }
  12. my @prob = [0.1,0.2,1.3,0.2,0.3];
  13. set_seed(123,456);
  14. say raku_rmultinom(100,12, @prob);
  15.  
  16.  
  17. # Outputs
  18. # (0 0 -1 0 0 0 0 0 0 0 0 0)
Add Comment
Please, Sign In to add comment