use List::Util 'shuffle'; $rSquared = $lfit->setData($xref, $yref)->rSquared; @rsq = map { $lfit->setData($xref, [shuffle @$yref])->rSquared } 1..1000; print "pretty good\n" if (grep { $_ > $rSquared } @rsq) > 950;