如何在php中实现Dirichlet分布公式

如何在php中实现Dirichlet分布公式,php,Php,从上面,我想找到狄里克莱分布,图中列出了变量 我从这里得到了概率计算公式,我想找到下一步,就是狄里克莱分布 function weighted_random($values, $weights) { $count = count($values); $i = 0; $n = 0; $num = mt_rand(0, array_sum($weights)); while($i < $count) { $n += $wei

从上面,我想找到狄里克莱分布,图中列出了变量

我从这里得到了概率计算公式,我想找到下一步,就是狄里克莱分布

function weighted_random($values, $weights) {  
    $count = count($values); 
    $i = 0; 
    $n = 0; 
    $num = mt_rand(0, array_sum($weights)); 

    while($i < $count) {
        $n += $weights[$i]; 

        if($n >= $num) {
            break; 
        }

        $i++; 
    } 

    return $values[$i]; 
}
函数加权随机($value,$weights){
$count=计数($value);
$i=0;
$n=0;
$num=mt_rand(0,数组和($weights));
而($i<$count){
$n+=$weights[$i];
如果($n>=$num){
打破
}
$i++;
} 
返回$value[$i];
}