# Lets play with order based on Max/Min value my $change = $data->{Max}{AVG_Percentage_Used} / $data->{Min}{AVG_Percentage_Used}; print "Change is $change\n"; my $order = 1; $order = 2 if $change > 1.05; $order = 3 if $change > 1.15; $order = 4 if $change > 1.30; my @Thetas = 'Const'; # Set Thetas for zero order push @Thetas, 'Theta'.$_ for 1 .. $order; my $reg = Statistics::Regression->new( $data->{Name}, \@Thetas ); # Add data points for ( @{$data->{values}} ) { my $epoch = mktime($s, $m, $h, $D, $M-1, $Y); my $x = $_->[2]; my @Data = 1; push @Data, $x**$_ for 1..$order; print "\$reg->include ( $epoch, [".(join ", ", @Data)." ] )\n"; $reg->include ( $epoch, \@Data ); } print "Results are ...\n"; $reg->print();