Exemplo n.º 1
0
        public double Get_leftTailed_p_value(int a, int b, int c, int d)
        {
            if (Report)
            {
                Report_class.WriteLine("{0}: Get left tailed p-value", typeof(Fisher_exact_test_class).Name);
            }
            double p;

            if (Check_if_n_not_larger_than_max_size(a, b, c, d))
            {
                p = Get_specific_p_value(a, b, c, d);
                int min = (a < d) ? a : d;
                for (int i = 0; i < min; i++)
                {
                    p += Get_specific_p_value(--a, ++b, ++c, --d);
                }
            }
            else
            {
                p = -1;
            };
            if (Report)
            {
                for (int i = 0; i < typeof(Fisher_exact_test_class).Name.Length + 2; i++)
                {
                    Report_class.Write(" ");
                }
                Report_class.WriteLine("p_value: {0}", p);
            }
            if (p > 1)
            {
                p = 1;
            }
            return(p);
        }
Exemplo n.º 2
0
        public static void Delete_files_in_directory_that_start_with_startString(string directory, string startString)
        {
            string[] complete_file_names        = Directory.GetFiles(directory);
            int      complete_file_names_length = complete_file_names.Length;

            if (complete_file_names_length > 0)
            {
                Report_class.Write("Delete files in directory {0}:", directory);
                Console.ReadLine();
                string[] file_names = new string[complete_file_names_length];
                for (int indexC = 0; indexC < complete_file_names_length; indexC++)
                {
                    file_names[indexC] = Path.GetFileName(complete_file_names[indexC]);
                }

                foreach (string file_name in file_names)
                {
                    if (file_name.IndexOf(startString) == 0)
                    {
                        FileInfo delete_file = new FileInfo(directory + file_name);
                        delete_file.Delete();
                    }
                }
            }
        }
Exemplo n.º 3
0
        public double Get_rightTailed_p_value(int a, int b, int c, int d)
        {
            if (Report)
            {
                Report_class.WriteLine("{0}: Get right tailed p-value", typeof(Fisher_exact_test_class).Name);
            }
            double p;

            if (Check_if_n_not_larger_than_max_size(a, b, c, d))
            {
                p = Get_specific_p_value(a, b, c, d);
                int min = (c < b) ? c : b;
                for (int i = 0; i < min; i++)
                {
                    p += Get_specific_p_value(++a, --b, --c, ++d);
                }
            }
            else
            {
                p = -1;
            };
            if (Report)
            {
                for (int i = 0; i < typeof(Fisher_exact_test_class).Name.Length + 2; i++)
                {
                    Report_class.Write(" ");
                }
                Report_class.WriteLine("p_value: {0}", p);
            }
            return(p);
        }
Exemplo n.º 4
0
 public static void Delete_directory_if_it_exists(string directory)
 {
     if (Directory.Exists(directory))
     {
         Report_class.Write("Delete {0}?", directory);
         Console.Read();
         Directory.Delete(directory, true);
     }
 }
Exemplo n.º 5
0
 public static void Delete_file_if_it_exists(string complete_file_name)
 {
     if (File.Exists(complete_file_name))
     {
         Report_class.Write("Delete file: {0}?", complete_file_name);
         Console.ReadLine();
         FileInfo delete_file = new FileInfo(complete_file_name);
         delete_file.Delete();
         Report_class.WriteLine(" deleted");
     }
 }
Exemplo n.º 6
0
 public static void Delete_files_in_directory(string directory)
 {
     string[] complete_file_names = Directory.GetFiles(directory);
     if (complete_file_names.Length > 0)
     {
         Report_class.Write("Delete files in directory {0}:", directory);
         Console.ReadLine();
         foreach (string complete_file_name in complete_file_names)
         {
             FileInfo delete_file = new FileInfo(complete_file_name);
             delete_file.Delete();
         }
     }
 }
Exemplo n.º 7
0
 private void Print_options()
 {
     Report_class.WriteLine("{0}: Print options", typeof(Ontology_process_analysis_options_class).Name);
     for (int i = 0; i < typeof(Ontology_process_analysis_options_class).Name.Length + 2; i++)
     {
         Report_class.Write(" ");
     }
     Report_class.Write("Used Ontologies:");
     for (int i = 0; i < Ontologies.Length; i++)
     {
         Report_class.Write(" {0}", Ontologies[i]);
     }
     Report_class.WriteLine();
 }
Exemplo n.º 8
0
 public static void Delete_file_if_it_exists(string complete_file_name)
 {
     Report_class.Write("Delete file {0}:", complete_file_name);
     if (File.Exists(complete_file_name))
     {
         FileInfo delete_file = new FileInfo(complete_file_name);
         delete_file.Delete();
         Report_class.WriteLine(" deleted");
     }
     else
     {
         Report_class.WriteLine(" File does not exist");
     }
 }
Exemplo n.º 9
0
        public void Print_options()
        {
            Report_class.WriteLine("{0}: Print options", typeof(Mbc_enrichment_pipeline_options_class).Name);
            int right_shift = 4;


            #region Write general options
            for (int i = 0; i < right_shift; i++)
            {
                Report_class.Write(" ");
            }
            Report_class.WriteLine("General:");
            for (int i = 0; i < right_shift; i++)
            {
                Report_class.Write(" ");
            }
            Report_class.WriteLine("Report: {0}", Report);
            Report_class.WriteLine();
            #endregion

            #region Write parameter for both standard and dynamic enrichment analysis
            for (int i = 0; i < right_shift; i++)
            {
                Report_class.Write(" ");
            }
            Report_class.WriteLine("Parameter for both standard and dynamic enrichment analysis:");
            for (int i = 0; i < right_shift; i++)
            {
                Report_class.Write(" ");
            }
            Report_class.Write("Data value signs of interest:");
            int signs_of_interest_length = Data_value_signs_of_interest.Length;
            for (int indexS = 0; indexS < signs_of_interest_length; indexS++)
            {
                if (indexS != 0)
                {
                    Report_class.Write(",");
                }
                Report_class.Write(" {0}", Data_value_signs_of_interest[indexS]);
            }
            Report_class.WriteLine();
            for (int i = 0; i < right_shift; i++)
            {
                Report_class.Write(" ");
            }
            Report_class.WriteLine("Maximum pvalue: {0}", Maximum_pvalue_for_standardDynamicEnrichment);
            Report_class.WriteLine();
            #endregion

            #region Write parameter for standard enrichment analysis
            for (int i = 0; i < right_shift; i++)
            {
                Report_class.Write(" ");
            }
            Report_class.WriteLine("Parameter for standard enrichment analysis only:");
            for (int i = 0; i < right_shift; i++)
            {
                Report_class.Write(" ");
            }
            Report_class.Write("Keep top predictions:");
            int keep_top_length = Kept_top_predictions_standardEnrichment_per_level.Length;
            for (int level = 1; level < keep_top_length; level++)
            {
                if (level != 1)
                {
                    Report_class.Write(", ");
                }
                Report_class.Write(" Level {0}: {1}", level, Kept_top_predictions_standardEnrichment_per_level[level]);
            }
            Report_class.WriteLine();
            Report_class.WriteLine();
            #endregion

            #region Write parameter for dyanmic enrichment analysis
            for (int i = 0; i < right_shift; i++)
            {
                Report_class.Write(" ");
            }
            Report_class.WriteLine("Parameter for dynamic enrichment analysis only:");
            for (int i = 0; i < right_shift; i++)
            {
                Report_class.Write(" ");
            }
            Report_class.Write("Do dynamic enrichment for: ");
            int scp_levels_for_dynamicEnrichment_length = Scp_levels_for_dynamicEnrichment.Length;
            for (int indexLevel = 0; indexLevel < scp_levels_for_dynamicEnrichment_length; indexLevel++)
            {
                if ((indexLevel != 0) && (indexLevel == scp_levels_for_dynamicEnrichment_length - 1))
                {
                    Report_class.Write(" and ");
                }
                else if (indexLevel != 0)
                {
                    Report_class.Write(", ");
                }
                Report_class.Write(" Level {0}", Scp_levels_for_dynamicEnrichment[indexLevel]);
            }
            Report_class.WriteLine();
            for (int i = 0; i < right_shift; i++)
            {
                Report_class.Write(" ");
            }
            Report_class.WriteLine("Number of neighboring SCPs that are merged to SCP unions:");
            for (int indexLevel = 0; indexLevel < scp_levels_for_dynamicEnrichment_length; indexLevel++)
            {
                int   level = Scp_levels_for_dynamicEnrichment[indexLevel];
                int[] merge_scps_current_level = Numbers_of_merged_scps_for_dynamicEnrichment_per_level[level];
                for (int i = 0; i < right_shift; i++)
                {
                    Report_class.Write(" ");
                }
                Report_class.Write("To generate level-{0} SCP unions merge ", level);
                int merge_length = merge_scps_current_level.Length;
                for (int indexM = 0; indexM < merge_length; indexM++)
                {
                    if ((indexM != 0) && (indexM == merge_length - 1))
                    {
                        Report_class.Write(" or ");
                    }
                    else if (indexM != 0)
                    {
                        Report_class.Write(", ");
                    }
                    Report_class.Write("{0}", merge_scps_current_level[indexM]);
                }
                Report_class.WriteLine(" SCPs");
            }

            for (int i = 0; i < right_shift; i++)
            {
                Report_class.Write(" ");
            }
            Report_class.Write("Top quantile of scp interactions that are considered to identify neighboring SCPs: ");
            int top_quantile_length = Top_quantile_of_scp_interactions_for_dynamicEnrichment_per_level.Length;
            for (int indexLevel = 0; indexLevel < scp_levels_for_dynamicEnrichment_length; indexLevel++)
            {
                int level = Scp_levels_for_dynamicEnrichment[indexLevel];
                if (indexLevel != 0)
                {
                    Report_class.Write(", ");
                }
                Report_class.WriteLine("Level {0}: {1}", level, Top_quantile_of_scp_interactions_for_dynamicEnrichment_per_level[level]);
            }
            for (int i = 0; i < right_shift; i++)
            {
                Report_class.Write(" ");
            }
            Report_class.Write("Top quantile of scp interactions that are considered to visualize SCP network:");
            top_quantile_length = Top_quantile_of_scp_interactions_for_visualization_of_dynamicEnrichment_per_level.Length;
            for (int indexLevel = 0; indexLevel < scp_levels_for_dynamicEnrichment_length; indexLevel++)
            {
                int level = Scp_levels_for_dynamicEnrichment[indexLevel];
                if (indexLevel != 1)
                {
                    Report_class.Write(", ");
                }
                Report_class.Write("Level {0}: {1}", level, Top_quantile_of_scp_interactions_for_visualization_of_dynamicEnrichment_per_level[level]);
            }
            Report_class.WriteLine();
            for (int i = 0; i < right_shift; i++)
            {
                Report_class.Write(" ");
            }
            Report_class.Write("Keep top predicted SCP unions or single SCPs: ");
            top_quantile_length = Top_quantile_of_scp_interactions_for_visualization_of_dynamicEnrichment_per_level.Length;
            for (int indexLevel = 0; indexLevel < scp_levels_for_dynamicEnrichment_length; indexLevel++)
            {
                int level = Scp_levels_for_dynamicEnrichment[indexLevel];
                if (indexLevel != 0)
                {
                    Report_class.Write(", ");
                }
                Report_class.Write("Level {0}: {1}", level, Kept_top_predictions_dynamicEnrichment_per_level[level]);
            }
            Report_class.WriteLine();
            for (int i = 0; i < right_shift; i++)
            {
                Report_class.Write(" ");
            }
            Report_class.Write("Keep not more than x SCPs as part of a single SCP prediction or a predicted SCP-union: ");
            top_quantile_length = Top_quantile_of_scp_interactions_for_visualization_of_dynamicEnrichment_per_level.Length;
            for (int indexLevel = 0; indexLevel < scp_levels_for_dynamicEnrichment_length; indexLevel++)
            {
                int level = Scp_levels_for_dynamicEnrichment[indexLevel];
                if (indexLevel != 0)
                {
                    Report_class.Write(", ");
                }
                Report_class.WriteLine("Level {0}: {1}", level, Kept_singleSCPs_dynamicEnrichment_per_level[level]);
            }
            Report_class.WriteLine();
            #endregion
        }