Condition Coverage

blib/lib/Algorithm/DecisionTree.pm
Criterion Covered Total %
condition 41 234 17.5


and 3 conditions

line !l l&&!r l&&r condition
95 0 0 0 not contained_in($feature, keys %{$$self{'_prob_distribution_numeric_features_hash'};}) and $not_all_values_float == 0
300 0 0 0 $user_value_for_feature >= $valuerange[0] and $user_value_for_feature <= $valuerange[1]
427 46 0 0 defined $self->{'_max_depth_desired'} and @features_and_values_or_thresholds_on_branch >= $self->{'_max_depth_desired'}
442 26 0 0 exists $self->{'_numeric_features_valuerange_hash'}{$best_feature} and $self->{'_feature_values_how_many_uniques_hash'}{$best_feature} > $self->{'_symbolic_to_numeric_cardinality_threshold'}
618 46 0 0 contained_in($feature_name, keys %{$$self{'_numeric_features_valuerange_hash'};}) and $self->{'_feature_values_how_many_uniques_hash'}{$feature_name} > $self->{'_symbolic_to_numeric_cardinality_threshold'}
627 0 0 0 defined $upperbound{$feature_name} and defined $lowerbound{$feature_name}
0 0 0 defined $upperbound{$feature_name} and defined $lowerbound{$feature_name} and $lowerbound{$feature_name} >= $upperbound{$feature_name}
0 0 0 defined $upperbound{$feature_name} and defined $lowerbound{$feature_name}
0 0 0 defined $upperbound{$feature_name} and defined $lowerbound{$feature_name} and $lowerbound{$feature_name} < $upperbound{$feature_name}
633 0 0 0 $x > $lowerbound{$feature_name} and $x <= $upperbound{$feature_name}
735 46 0 0 exists $self->{'_numeric_features_valuerange_hash'}{$best_feature_name} and $self->{'_feature_values_how_many_uniques_hash'}{$best_feature_name} > $self->{'_symbolic_to_numeric_cardinality_threshold'}
764 0 0 2 $prob >= 0.0001 and $prob <= 0.999
815 0 0 0 $prob >= 0.0001 and $prob <= 0.999
851 0 0 0 $prob >= 0.0001 and $prob <= 0.999
880 0 0 318 $prob >= 0.0001 and $prob <= 0.999
968 4 437 0 defined $value and $value =~ /^\d+$/
969 4 437 0 defined $value and exists $self->{'_sampling_points_for_numeric_feature_hash'}{$feature_name}
977 4 0 437 defined $value and exists $self->{'_probability_cache'}{$feature_and_value}
988 0 0 0 $_ ne 'NA' and not $seen{$_}++
1039 0 0 0 defined $value and exists $self->{'_probability_cache'}{$feature_and_value}
1046 0 0 0 $_ ne 'NA' and not $seen{$_}++
1067 0 0 0 defined $value and exists $self->{'_probability_cache'}{$feature_and_value}
1091 4 0 0 defined $value and exists $self->{'_probability_cache'}{$feature_and_value}
1104 0 882 0 defined $feature_value and $feature_value =~ /^\d+$/
1105 0 882 0 defined $feature_value and exists $self->{'_sampling_points_for_numeric_feature_hash'}{$feature_name}
1113 0 8 874 defined $feature_value and exists $self->{'_probability_cache'}{$feature_value_class}
1148 0 0 0 $feature eq $feature_name and $value ne 'NA'
1179 0 0 0 $_ ne 'NA' and not $seen{$_}++
1211 0 252 28 $_ ne 'NA' and not $seen{$_}++
1275 0 0 0 $feature eq $feature_name and $value ne 'NA'
1343 0 0 0 defined $lowerbound{$feature_name} and defined $upperbound{$feature_name}
0 0 0 defined $lowerbound{$feature_name} and defined $upperbound{$feature_name} and $upperbound{$feature_name} <= $lowerbound{$feature_name}
0 0 0 defined $lowerbound{$feature_name} and defined $upperbound{$feature_name}
0 0 0 defined $upperbound{$feature_name} and not defined $lowerbound{$feature_name}
0 0 0 defined $lowerbound{$feature_name} and not defined $upperbound{$feature_name}
1450 0 0 0 $lowerbound{$feature_name} and $upperbound{$feature_name}
0 0 0 $lowerbound{$feature_name} and $upperbound{$feature_name} and $upperbound{$feature_name} <= $lowerbound{$feature_name}
0 0 0 defined $lowerbound{$feature_name} and defined $upperbound{$feature_name}
0 0 0 defined $upperbound{$feature_name} and not defined $lowerbound{$feature_name}
0 0 0 defined $lowerbound{$feature_name} and not defined $upperbound{$feature_name}
1566 0 0 0 @$x > 0 and $x->[0] eq $feature_name
1589 0 0 0 @temp1 > 0 and @temp2 > 0
1638 0 0 0 defined $feature and defined $value
1738 0 126 14 $_ ne 'NA' and not $seen1{$_}++
2046 0 0 0 $_ ne 'NA' and not $seen{$_}++
2088 0 0 0 $_ and not $_ =~ /=NA$/
2140 0 0 0 $data_quality_index > 80 and $data_quality_index <= 90
0 0 0 $data_quality_index > 90 and $data_quality_index <= 95
0 0 0 $data_quality_index > 95 and $data_quality_index <= 98
2749 0 17 35 $roll_the_dice >= $v->[0] and $roll_the_dice <= $v->[1]
2784 97 70 140 $roll_the_dice >= $v->[0] and $roll_the_dice <= $v->[1]
3011 0 0 0 $val_data ne 'NA' and $feature eq $feature_data
0 0 0 $val_data ne 'NA' and $feature eq $feature_data and $val_data <= $value
3022 0 0 0 $val_data ne 'NA' and $feature eq $feature_data
0 0 0 $val_data ne 'NA' and $feature eq $feature_data and $val_data > $value

or 2 conditions

line l !l condition
48 0 1 $args{'entropy_threshold'} || 0.01
0 1 $args{'debug1'} || 0
0 1 $args{'debug2'} || 0
0 1 $args{'debug3'} || 0
1 0 $args{'csv_class_column_index'} || undef
1 0 $args{'csv_columns_for_features'} || undef
0 1 $args{'symbolic_to_numeric_cardinality_threshold'} || 10
0 1 $args{'number_of_histogram_bins'} || undef
0 1 $args{'csv_cleanup_needed'} || 0
1698 1 0 $self->{'_training_datafile'} || die("unable to open $self->{'_training_datafile'}: $!")
2272 0 0 $self->get_feature || ' '
2291 0 0 $self->get_feature || ' '
2356 0 0 $args{'debug'} || 0
2401 0 0 $self->{'_parameter_file'} || die("unable to open parameter file: $!")
2601 1 0 $args{'output_training_datafile'} || die('name for output_training_datafile required')
1 0 $args{'parameter_file'} || die('parameter_file required')
1 0 $args{'number_of_samples_for_training'} || die('number_of_samples_for_training required')
0 1 $args{'debug'} || 0

or 3 conditions

line l !l&&r !l&&!r condition
27 0 0 0 $eval_or_boosting_mode eq 'evalmode' or $eval_or_boosting_mode eq 'boostingmode'
1677 0 0 0 $answer =~ /y(es)?/i or $answer =~ /n(o)?/i
1847 0 0 0 not defined $min or $arr->[$i] < $min
1860 0 0 0 not defined $min or $arr->[$i] < $min
1863 0 0 0 not defined $max or $arr->[$i] > $max
2356 0 0 0 $args{'output_training_csv_file'} || croak('name for output_training_csv_file required')
0 0 0 $args{'output_test_csv_file'} || croak('name for output_test_csv_file required')
0 0 0 $args{'parameter_file'} || croak('parameter_file required')
0 0 0 $args{'number_of_samples_for_training'} || croak('number_of_samples_for_training')
0 0 0 $args{'number_of_samples_for_testing'} || croak('number_of_samples_for_testing')
2645 1 0 0 $input_parameter_file || "unable to open parameter file: $!"