diff --git a/misc-scripts/density_feature/gene_density_calc.pl b/misc-scripts/density_feature/gene_density_calc.pl index 622b216b49422a2466efe2a93c530349c6173d4e..4556e5acf0fca60b1d84ace668250b7b681b99e9 100644 --- a/misc-scripts/density_feature/gene_density_calc.pl +++ b/misc-scripts/density_feature/gene_density_calc.pl @@ -101,6 +101,10 @@ print "Deleting old knownGeneDensity and geneDensity features\n"; $sth = $db->dbc->prepare("DELETE df, dt, a, ad FROM density_feature df, density_type dt, analysis a, analysis_description ad WHERE ad.analysis_id = a.analysis_id AND a.analysis_id=dt.analysis_id AND dt.density_type_id=df.density_type_id AND a.logic_name IN ('knownGeneDensity', 'geneDensity')"); $sth->execute(); +$sth = $db->dbc->prepare("DELETE df, dt, a FROM density_feature df, density_type dt, analysis a WHERE a.analysis_id=dt.analysis_id AND dt.density_type_id=df.density_type_id AND a.logic_name IN ('knownGeneDensity', 'geneDensity')"); +$sth->execute(); + + # $sth = $db->dbc()->prepare( # qq( # DELETE ad @@ -139,9 +143,14 @@ $analysis = new Bio::EnsEMBL::Analysis (-program => "gene_density_calc.pl", -database => "ensembl", -gff_source => "gene_density_calc.pl", -gff_feature => "density", - -logic_name => "geneDensity"); + -logic_name => "geneDensity", + -description => 'Gene density features in a database ' + . 'as calculated by gene_density_calc.pl', + -display_label => 'Genes (density)', + -displayable => 1 ); $aa->store( $analysis ); +$aa->update($analysis); # # Now the actual feature calculation loop @@ -176,24 +185,24 @@ foreach my $known (1, 0) { $block_size = $slice->length() / $bin_count; - my @density_features=(); + my @density_features;#sf7 print "Gene densities for ".$slice->seq_region_name(). " with block size $block_size\n"; $current_end = 0; $current = 0; - while($current_end < $slice->end()) { + while($current_end < $slice->length) { $current += $block_size; $current_start = $current_end+1; $current_end = int( $current + 1 ); if( $current_end < $current_start ) { - $current_end = $current_start; + $current_end = $current_start; } - if( $current_end > $slice->end() ) { - $current_end = $slice->end(); + if( $current_end > $slice->end ) { + $current_end = $slice->end; } @@ -206,9 +215,9 @@ foreach my $known (1, 0) { # foreach my $gene (@{$sub_slice->get_all_Genes()}){ - if($gene->biotype() !~ /pseudogene/i and $gene->start >=1 ) { - $count++ if(!$known || $gene->is_known()); - } + if($gene->biotype() !~ /pseudogene/i and $gene->start >=1 ) { + $count++ if(!$known || $gene->is_known()); + } } push @density_features, Bio::EnsEMBL::DensityFeature->new diff --git a/misc-scripts/density_feature/percent_gc_calc.pl b/misc-scripts/density_feature/percent_gc_calc.pl index 41a1a5a3242d08b6a0043c40892582e974b996de..1f15a79701a37aa69d2f06f9489f246aa472ec9a 100644 --- a/misc-scripts/density_feature/percent_gc_calc.pl +++ b/misc-scripts/density_feature/percent_gc_calc.pl @@ -132,7 +132,7 @@ foreach my $slice (@sorted_slices){ $current_end = 0; $current = 0; - while ($current_end < $slice->end()) { + while ($current_end < $slice->length) { $current += $block_size; $current_start = $current_end+1; diff --git a/misc-scripts/density_feature/variation_density.pl b/misc-scripts/density_feature/variation_density.pl index ef0f5eee436ec76c1cedd468f72e4a6fbca6c730..e174e5be8c5374b08eb61e89bbbdfe94a210dc32 100644 --- a/misc-scripts/density_feature/variation_density.pl +++ b/misc-scripts/density_feature/variation_density.pl @@ -120,7 +120,7 @@ foreach my $slice (@sorted_slices){ $current_end = 0; $current = 0; - while($current_end < $slice->end()) { + while($current_end < $slice->length) { $current += $block_size; $current_start = $current_end+1;