Help for this page

Select Code to Download


  1. or download this
    sub binomial {
        my ($n,$s)=@_;
    ...
                ? 0 | ($_[1] + 1) * binomial( $_[0], $_[1] + 1) / ($_[0] -
    + $_[1])
                : 1;
    }
    
  2. or download this
    # Usage:
    # my @probs = prob_binomial( $span, $avg);
    ...
    # using ~1000 element array, adjust to suit ranges
    my @picklist = map {($min+$_) x int( .5 + 1000 * $problist[$_])} 0..$m
    +ax-$min;
    print $picklist[rand @picklist],$" for 1..$num;
    
  3. or download this
    sub prob_hyper {
        my ($N1,$N2,$n)=@_;
        my $span = $N1<$n? $N1 : $n;
        map {binomial($N1,$_) * binomial($N2,$n-$_) / binomial($N1+$N2,$n)
    +} 0..$span;
    }