어떻게이 perl 서브 루틴을 PHP 함수로 변환합니까?perl에서 PHP 번역
foreach my $cat_a (keys %aggregate) {
foreach my $cat_b (keys %aggregate) {
}
}
어떻게이 perl 서브 루틴을 PHP 함수로 변환합니까?perl에서 PHP 번역
foreach my $cat_a (keys %aggregate) {
foreach my $cat_b (keys %aggregate) {
}
}
// &$... is a value reference instead of a value copy, when in doubt use $...
foreach ($aggregate as $cat_a => &$val_a) {
foreach ($aggregate as $cat_b => &$val_b) {
if ($cat_a !== $cat_b) $disagreement += $val_a * $val_b ...;
}
}
foreach my $cat_a (keys %aggregate)
은 $ 집계를 가정하는 연관 배열이다
foreach ($aggregate as $key => $cat_a)
된다 :
sub disagreement {
my $disagreement = 0;
my %aggregate =() ;
foreach my $item (@_) {$aggregate{$item}++}
foreach my $cat_a (keys %aggregate) {
foreach my $cat_b (keys %aggregate) {
if ($cat_a != $cat_b) {$disagreement += $aggregate{$cat_a} * $aggregate{$cat_b} * &$distance_metric ($cat_a , $cat_b)}
}
}
$disagreement /= @_ * (@_ - 1) ;
return ($disagreement) ;
}
나는 여기에 문제가 있습니다.
AFAIK, PHP의 모든 배열은 연관입니다. – Tomalak
그리고이 표현에서 "&"의 목적은 무엇입니까? "... * $ distance_metric ($ cat_a, $ cat_b)}"? – Alex