App-geoCancerPrognosticDatasetsRetriever
view release on metacpan or search on metacpan
bin/geoCancerPrognosticDatasetsRetriever view on Meta::CPAN
}
}
############################ SUBROUTINE 11 #######################################################
#This subroutine uses regular expression analysis to detect prognostic signature patterns.
#The regexes are based on over 50 parsed signatures used for different cancer types.
sub prognostic_signature_finder {
my $soft_file = $_[0];
my %hash_signature = ();
my $soft_line = "";
my $regex_tail = '(:|=)\s*(alive.*|no\sdeath|dea(d|th.*)|deceased|NED|DOD|DOC|0\s|1\s|no|yes|.*patient|died.*|alive|surviv(al|ed)|living|long|short|Y|N|NED|DOD|AWD|Exitus)';
my $regex_keyword_type_A = '(.*stat?us.*|.*(dea(d|th)|.*alive).*|.*\srecur\s.*|.*Die.*)' . $regex_tail;
my $regex_keyword_type_B = '(dss.?event\s?\(.+\)|dfs.*\w+|drfs.*|e\.dmfs.*|e\.rfs.*|e?\.?os.*)' . $regex_tail;
my $regex_keyword_type_C = '((Overall)?\s?survival.*|(overall)?.?event.*|outcome.*|prognosis.*|comort.*|evolution.*)' . $regex_tail;
my $regex_keyword_type_Ca = '(Overall)?\s?survival\s.*(:|=)\s*(\d*)';
my $outcome_1 = "Prognostic Signature filter: <Prognostic signature found>\n";
my $outcome_2 = "Prognostic Signature filter: <No data found>\n";
my $i = 0;
#open SOFT file and read its contents
open (KEY, "$run_dir/$soft_file") or die "Cannot open $soft_file: $!";
( run in 0.783 second using v1.01-cache-2.11-cpan-df04353d9ac )