#!/usr/bin/perl -w use strict; use warnings; #open(FH,"$ARGV[0]") or die; #my @temp=<FH>; #close FH; my @temp = <DATA>; my $mean = Mean (\@temp); my $variance = variance(\@temp); print "$variance\n"; sub sum { my ($arrayref) = @_; my $result; foreach(@$arrayref) { $result+= $_; } return $result; } sub Mean { my ($arrayref) = @_; my $result; foreach (@$arrayref) { $result += $_ } return $result / @$arrayref; } sub variance { my ($arrayref)= @_; my @a = map ( ($_ - $mean)**2, @$arrayref); return sum(\@a) / scalar @$arrayref; } __DATA__ 1 2 3 4 5
In reply to Re: variance calculation
by ady
in thread variance calculation
by cdfd123
| For: | Use: | ||
| & | & | ||
| < | < | ||
| > | > | ||
| [ | [ | ||
| ] | ] |