Is this a BUG in TargetPrediction.pm?
At line 560, the full name of microRNA will assign to all these vars.
if(lc($miRNA) eq lc($found_miRNA)){
$result->{$id}->{miRNA}=$found_miRNA;
$result->{$id}->{EnsEMBL}=$found_miRNA;
$result->{$id}->{HGNC}=$found_miRNA;
$result->{$id}->{utr}=$found_miRNA;
$result->{$id}->{method}=$found_miRNA;
$result->{$id}->{target_site}=$found_miRNA;
$result->{$id}->{score}=$found_miRNA;
$result->{$id}->{energy}=$found_miRNA;
}
Since ENSG id ( eg. ENSG00000123700) VS the full name of mir ( eg. hsa-miR-338-5p ), so this line will not generate any results.
foreach my $gene (keys %$UTRs){ if(($gene eq $result->{$id}->{EnsEMBL}) or ($gene eq $result->{$id}->{HGNC}) or ($gene eq $result->{$id}->{utr})){
Therefore the result will be empty.
Can I fix these codes as bellow ( I have tested these code, and the result is generated correctly) : $result->{$id}->{miRNA}=$found_miRNA; $result->{$id}->{EnsEMBL}=$ensembl; $result->{$id}->{HGNC}=$hgnc; $result->{$id}->{utr}=$utr; $result->{$id}->{method}=$method; $result->{$id}->{target_site}=$target_site; $result->{$id}->{score}=$score; $result->{$id}->{energy}=$energy;
Comments (4)
-
reporter -
Dear WJH1978, Thanks for reporting this possible bug, I'm checking this part of the code to see what is happening. I've re-run 3 different examples and all of them are working perfectly with the old code, so this seems weird
I'll let you know
-
-
assigned issue to
-
assigned issue to
-
- changed status to resolved
Added to miARma 1.7.2 (18/dec/2017)
- Log in to comment
After these codes, also have some problems.
print OUT "\t" . $result->{$id}->{method} ."\t" . $result->{$id}->{target_site} ."\t" . $result->{$id}->{normalized_score} ."\t";
print OUT "\t" . $result->{$id}->{score} ."\t".$result->{$id}->{energy} ."\n";
Here, $result->{$id}->{normalized_score} is not defined, and doulbe "\t", so there are two empty columns in the result file.