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); }
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(); } } } }
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); }
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); } }
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"); } }
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(); } } }
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(); }
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"); } }
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 }