46 lines
1.3 KiB
Perl
Executable File
46 lines
1.3 KiB
Perl
Executable File
#!/usr/bin/perl
|
|
#use strict;
|
|
#use warnings;
|
|
|
|
die "usage:perl $0 outputDir tumor" unless @ARGV==2;
|
|
my ($outputDir,$tumor)=@ARGV;
|
|
my @mmr=("MLH1","MSH2","MSH6","PMS2","EPCAM");
|
|
|
|
open OUT,">$outputDir/MMR/${tumor}_mmr.txt";
|
|
open IN, "$outputDir/mutation/${tumor}.snp.indel.Germline.anno.hg19_multianno_filtered.txt";
|
|
open MMRPRE,">$outputDir/MMR/${tumor}.mmr.pre.txt";
|
|
my $head=<IN>;
|
|
|
|
my (@content,@mmrpre);
|
|
while(<IN>){
|
|
chomp;
|
|
my @line=split("\t");
|
|
next unless grep{$line[7] eq $_}@mmr;
|
|
push @mmrpre,"$_";
|
|
next if $line[0]!~/1|2|3/;
|
|
my $sig=($line[0]=='1')?'致病突变':($line[0]=='2')?'疑似致病突变':'意义未明突变';
|
|
shift @line;
|
|
if($line[9] ne '.'){
|
|
my $hgvs=$line[9];
|
|
$hgvs=~/:(NM_\d+):exon\d+:(c\.\S+):(p\.\S+)$/;
|
|
my $gene=$line[6];
|
|
my $tr=$1;
|
|
my $codon=$2;
|
|
my $protein=$3;
|
|
my $freq=(split(":",$line[-1]))[-2];
|
|
my $muttype=($line[8]=~/nonsynonymous SNV/)?'错义突变':($line[8]=~/^frameshift/)?'移码突变':($line[8]=~/^nonframeshift/)?'非移码突变':($line[8]=~/stopgain/)?'提前终止':'未知';
|
|
push @content,join("\t",($gene,$tr,$codon,$protein,$freq,$muttype,$sig));
|
|
}
|
|
}
|
|
|
|
if (@content){
|
|
print OUT "gene\ttranscript\tc_change\tp_change\tfreq\tmuttype\tsig\n";
|
|
print OUT join("\n",@content);
|
|
}
|
|
|
|
if (@mmrpre){
|
|
print MMRPRE $head;
|
|
print MMRPRE join("\n",@mmrpre)."\n";
|
|
}
|
|
|