master
chaopower 2024-01-31 14:26:26 +08:00
parent 6a22cb8463
commit 11fac53bdb
11 changed files with 3646 additions and 8239 deletions

View File

@ -17,7 +17,6 @@ open LONGINDEL, "> $out";
my ($longindel) = info();
my @longindels = @$longindel;
my @pos;
my $h2;
while (<IN>) {
@ -25,20 +24,24 @@ while (<IN>) {
next if /^##/;
if (/^#CHROM/) {
$h2 = $_;
print LONGINDEL "$h2\n";
print LONGINDEL "$h2\tHGVS\tfreq\n";
next;
}
my @line = split(/\t/);
$line[7] =~ /Gene.refGene=(.*?);/;
my $gene = $1;
if ((grep {$gene =~ /$_/} @longindels) && ($_ =~ /SVTYPE=DEL/ || $_ =~ /SVTYPE=DUP/ || $_ =~ /SVTYPE=INS/)) {
my $freq = (split(/:/, $line[9]))[9] / (split(/:/, $line[9]))[7];
my $hgvs = '.';
if ($gene eq "BCL2L11") {
if ($line[1] == '111883194') {
print LONGINDEL $_;
$hgvs = "BCL2L11:NM_001204106:intron2:c\.394+1479_394+4381del";
print LONGINDEL $_ . "\t$hgvs\t$freq\n";
}
}
else {
print LONGINDEL $_;
print LONGINDEL $_ . "\t$hgvs\t$freq\n";
}
}
}

View File

@ -477,7 +477,7 @@ class PostProcess:
# 添加常规列
filter_sum_pos_df = self._add_columns(filter_sum_pos_df)
# 添加基因功能
filter_sum_pos_df = self._add_gene_function(filter_sum_pos_df, colname='ref_gene')
filter_sum_pos_df = self._add_gene_function(filter_sum_pos_df, colname='Gene_Symbol')
# 药物处理
self.drug_parse(filter_sum_pos_df['DrugCn'].to_list())
filter_sum_pos_df['Validated'] = 1

File diff suppressed because it is too large Load Diff

View File

@ -119,10 +119,13 @@ chr21 39753374 39753375
chr22 41568479 41568480
chr22 30038151 30038152
chr22 30079212 30079213
chrX 76937962 76937963
chrX 39922358 39922359
chrX 39932906 39932907
chrX 44938562 44938563
chrX 76937962 76937963
chrX 76940533 76940534
chrX 100608190 100608191
chrX 100611284 100611285
chrX 76940533 76940534
chrX 44833840 44833841
chrX 53228147 53228148
chrX 44929076 44929077
chrX 47424614 47424615

View File

@ -119,10 +119,13 @@ chr21 39753374 39753375
chr22 41568479 41568480
chr22 30038151 30038152
chr22 30079212 30079213
chrX 76937962 76937963
chrX 39922358 39922359
chrX 39932906 39932907
chrX 44938562 44938563
chrX 76937962 76937963
chrX 76940533 76940534
chrX 100608190 100608191
chrX 100611284 100611285
chrX 76940533 76940534
chrX 44833840 44833841
chrX 53228147 53228148
chrX 44929076 44929077
chrX 47424614 47424615

View File

@ -119,10 +119,13 @@ chr21 39753374 39753375
chr22 41568479 41568480
chr22 30038151 30038152
chr22 30079212 30079213
chrX 76937962 76937963
chrX 39922358 39922359
chrX 39932906 39932907
chrX 44938562 44938563
chrX 76937962 76937963
chrX 76940533 76940534
chrX 100608190 100608191
chrX 100611284 100611285
chrX 76940533 76940534
chrX 44833840 44833841
chrX 53228147 53228148
chrX 44929076 44929077
chrX 47424614 47424615

View File

@ -1,11 +1,11 @@
#chr start end rs
chrX 39922358 39922359 rs3810694
chrX 39932906 39932907 rs6520618
chrX 44833840 44833841 rs6611055
chrX 44938562 44938563 rs20539
chrX 76937962 76937963 rs3088074
chrX 76940533 76940534 rs35268552
chrX 100608190 100608191 rs1135363
chrX 100611284 100611285 rs3747288
chrX 44833840 44833841 rs6611055
chrX 53228147 53228148 rs1977364
chrX 44929076 44929077 rs2230018
chrX 47424614 47424615 rs2071776

View File

@ -98,46 +98,24 @@ open POS, ">$output.pos.txt";
my $h2 = <IN>;
chomp $h2;
print POS $h2 . "\tOncogenic\t" . join("\t", (split("\t", $h1))[0 .. 9, 14]) . "\tLabel\tDrugCn\tIndication\n";
print POS $h2 . "\t" . join("\t", (split("\t", $h1))[0 .. 9, 14]) . "\tLabel\tDrugCn\tIndication\n";
my @pos;
while (<IN>) {
chomp;
my @splitline = split(/\t/);
my $freq = (split(/:/, $splitline[9]))[9] / (split(/:/, $splitline[9]))[7];
if (exists $therapy{lc 'BCL2L11'}{lc 'DELETION POLYMORPHISM'}) {
print "$freq\n";
foreach my $entry (@{$therapy{lc 'BCL2L11'}{lc 'DELETION POLYMORPHISM'}}) {
my @line = split("\t", $entry);
if (($line[14] eq 'A') and (grep {lc $line[2] eq lc $_} @{$dis2{$cancer_type}})) {
# push @pos, "$_\t.\t" . join("\t", @line[0 .. 9, 14]) . "\t适应症" . "\t" . &drug($line[3]) . "\t" . $dis{lc $line[2]};
push @pos, "$_\t.\tc\.394+1479_394+4381del\tBCL2L11:NM_001204106:intron2:c\.394+1479_394+4381del\t" . $freq . "\t" . join("\t", @line[0 .. 9]) . "\t适应症" . "\t" . &drug($line[3]) . "\t" . $dis{lc $line[2]};
push @pos, "$_\t" . join("\t", @line[0 .. 9, 14]) . "\t适应症" . "\t" . &drug($line[3]) . "\t" . $dis{lc $line[2]};
}
elsif (($line[14] eq 'A') and (grep {lc $line[2] ne lc $_} @{$dis2{$cancer_type}})) {
# push @pos, "$_\t.\t" . join("\t", @line[0 .. 9, 14]) . "\t非适应症" . "\t" . &drug($line[3]) . "\t" . $dis{lc $line[2]};
push @pos, "$_\t.\tc\.394+1479_394+4381del\tBCL2L11:NM_001204106:intron2:c\.394+1479_394+4381del\t" . $freq . "\t" . join("\t", @line[0 .. 9]) . "\t非适应症" . "\t" . &drug($line[3]) . "\t" . $dis{lc $line[2]};
push @pos, "$_\t" . join("\t", @line[0 .. 9, 14]) . "\t非适应症" . "\t" . &drug($line[3]) . "\t" . $dis{lc $line[2]};
}
elsif (grep {lc $line[2] eq lc $_} @{$dis2{$cancer_type}}) {
# push @pos, "$_\t.\t" . join("\t", @line[0 .. 9, 14]) . "\t\.\t" . &drug($line[3]) . "\t" . $dis{lc $line[2]};
push @pos, "$_\t.\tc\.394+1479_394+4381del\tBCL2L11:NM_001204106:intron2:c\.394+1479_394+4381del\t" . $freq . "\t" . join("\t", @line[0 .. 9]) . "\t\.\t" . &drug($line[3]) . "\t" . $dis{lc $line[2]};
push @pos, "$_\t" . join("\t", @line[0 .. 9, 14]) . "\t\.\t" . &drug($line[3]) . "\t" . $dis{lc $line[2]};
}
# my @line = split("\t", $entry);
# if (($line[5] eq "FDA" or $line[5] eq "NCCN" or $line[5] eq "NMPA") and $line[2] =~ /$cancer_type|solid tumor/i) {
# push @pos, "$_\tc\.394+1479_394+4381del\tBCL2L11:NM_001204106:intron2:c\.394+1479_394+4381del\t" . $freq . "\t" . join("\t", @line[0 .. 9]) . "\t适应症" . "\t" . &drug($line[3]) . "\t" . $dis{lc $line[2]};
# }
# elsif (($line[5] eq "FDA" or $line[5] eq "NCCN" or $line[5] eq "NMPA") and $line[2] !~ /$cancer_type|solid tumor/i) {
# push @pos, "$_\tc\.394+1479_394+4381del\tBCL2L11:NM_001204106:intron2:c\.394+1479_394+4381del\t" . $freq . "\t" . join("\t", @line[0 .. 9]) . "\t非适应症" . "\t" . &drug($line[3]) . "\t" . $dis{lc $line[2]};
# }
# elsif ($line[2] =~ /$cancer_type|solid tumor/i) {
# push @pos, "$_\tc\.394+1479_394+4381del\tBCL2L11:NM_001204106:intron2:c\.394+1479_394+4381del\t" . $freq . "\t" . join("\t", @line[0 .. 9]) . "\t\.\t" . &drug($line[3]) . "\t" . $dis{lc $line[2]};
# }
# else {
# print "未匹配到"
# }
}
}

File diff suppressed because one or more lines are too long