TERT 基因过滤

master
chaopower 2024-01-22 11:33:52 +08:00
parent 1922d14b76
commit 48fadecdd4
1 changed files with 16 additions and 2 deletions

View File

@ -40,13 +40,14 @@ print OUT "$new_head\n";
print TAG_OUT "TAG\t$head\n"; print TAG_OUT "TAG\t$head\n";
my %blacklist = blacklist(); my %blacklist = blacklist();
my ($muts_ref, $hcs_ref, $mmr_ref, $hhr1_ref, $hhr2_ref) = info(); my ($muts_ref, $hcs_ref, $mmr_ref, $hhr1_ref, $hhr2_ref, $promoter_ref) = info();
my @muts = @$muts_ref; my @muts = @$muts_ref;
my @hcs = @$hcs_ref; my @hcs = @$hcs_ref;
my @mmr = @$mmr_ref; my @mmr = @$mmr_ref;
my @hhr1 = @$hhr1_ref; my @hhr1 = @$hhr1_ref;
my @hhr2 = @$hhr2_ref; my @hhr2 = @$hhr2_ref;
my @promoter = @$promoter_ref;
my %transcript = transcript(); my %transcript = transcript();
my %oncogenic = get_oncogenic(); my %oncogenic = get_oncogenic();
@ -209,6 +210,12 @@ while (<IN>) {
} }
} }
# TERT 突变特殊处理 不过滤
if ((grep {$_ eq $gene} @promoter) and ($pipeline eq 'somatic') and ($gene eq 'TERT')
and ($line[1] eq '1295228' and $line[4] eq 'A') or ($line[1] eq '1295250' and $line[4] eq 'A')) {
@reason = ();
}
if (@reason) { if (@reason) {
print TAG_OUT join(";", @reason), "\t", join("\t", @line), "\n"; print TAG_OUT join(";", @reason), "\t", join("\t", @line), "\n";
next; next;
@ -250,6 +257,10 @@ while (<IN>) {
if (grep {$_ eq $gene} @hhr2) { if (grep {$_ eq $gene} @hhr2) {
push @genetags, 'hrr2'; push @genetags, 'hrr2';
} }
if (grep {$_ eq $gene} @promoter) {
@genetags = ();
push @genetags, 'promoter';
}
my $validated = '1'; my $validated = '1';
@ -304,9 +315,12 @@ sub info {
if ($record{'HRR_II'} ne "NA") { if ($record{'HRR_II'} ne "NA") {
@hhr2 = split(/\//, $record{'HRR_II'}); @hhr2 = split(/\//, $record{'HRR_II'});
} }
if ($record{'promoter'} ne "NA") {
@promoter = split(/\//, $record{'promoter'});
}
} }
} }
return \@muts, \@hcs, \@mmr, \@hhr1, \@hhr2 return \@muts, \@hcs, \@mmr, \@hhr1, \@hhr2, \@promoter,
} }
sub transcript { sub transcript {