/// <summary> /// 載入 Order群組定義 /// </summary> /// <param name="Args"></param> public static void initiallizeOrder(NHIRD_ArgTable Args) { Console.WriteLine("Call: initiallizeOrder"); Args.list_OrderGroupDefinision = new List<OrderGroup>(); Args.list_OrderGroupDefinision.Add(new OrderGroup("Drug Group 1", new List<string>() { "DrugCode1", "DrugCode2" })); Console.WriteLine("Return: {0} groups of orders were loaded.\r\n", Args.list_OrderGroupDefinision.Count); }
static void Preset_SIR(NHIRD_ArgTable argTable) { string str_path = @"D:\Google Drive\NHIRD WEI\" + argTable.str_year + @"\"; // -- 初始化次要診斷群 Console.Write("run: Initialize_Secondary_Diagnosis"); action.Initialize_Secondary_Diagnosis(argTable.list_SecondDiagnosisGroupDefinition); Console.WriteLine(", {0} Groups loaded", argTable.list_SecondDiagnosisGroupDefinition.Count); // -- 使用ID summary建立 all patient總表 Console.WriteLine("run: Load_All_Patient"); action.Load_All_Patient(argTable.list_SecondDiagnosisGroupDefinition, argTable.list_PtBaseData_IDtable, str_path + @"1) ID Summary " + argTable.str_year + ".txt"); // -- 加入含主診斷CD action based data 至List_PatientBasedData_All Console.WriteLine("run: Load_PrimaryDiagnosis_to_All_Patient"); action.Load_PrimaryDiagnosis_to_All_Patient(argTable.list_SecondDiagnosisGroupDefinition, argTable.list_PtBaseData_IDtable, str_path + @"2) Primary CD " + argTable.str_year + ".txt"); // -- 加入含次診斷CD action based data 至List_PatientBasedData_All Console.WriteLine("run: Load_SecondaryCD_to_All_Patient"); action.Load_SecondaryCD_to_All_Patient(argTable.list_SecondDiagnosisGroupDefinition, argTable.list_PtBaseData_IDtable, str_path + @"3) Secondary CD " + argTable.str_year + ".txt"); // -- 輸出all patient Console.WriteLine("run: Generate_All_Patient"); action.Generate_All_Patient(argTable.list_PtBaseData_IDtable, argTable.list_SecondDiagnosisGroupDefinition, str_path + "R) Patient Based in ID " + argTable.str_year + ".txt", true, argTable.int_DataStartYear, argTable.int_DataEndYear); // -- 計算ASI(all pt) Console.WriteLine("run: Calculate_Age_Specific_Incidence(All PT)"); action.Calculate_Age_Specific_Incidence(argTable.list_AgeSpecInc_AllPt, argTable.list_PtBaseData_IDtable, argTable.list_SecondDiagnosisGroupDefinition, false, argTable.int_DataStartYear, argTable.int_DataEndYear); // -- 輸出ASI(all pt) Console.WriteLine("run: Generate_ASI"); action.Generate_ASI(argTable.list_AgeSpecInc_AllPt, argTable.list_SecondDiagnosisGroupDefinition, str_path + @"R) ASI All Patient " + argTable.str_year + ".txt"); // -- 計算ASI(study group) Console.WriteLine("run: Calculate_Age_Specific_Incidence(Study Group)"); action.Calculate_Age_Specific_Incidence(argTable.list_AgeSpecInc_StdGrp, argTable.list_PtBaseData_IDtable, argTable.list_SecondDiagnosisGroupDefinition, true, argTable.int_DataStartYear, argTable.int_DataEndYear); // -- 輸出ASI(study group) Console.WriteLine("run: Generate_ASI"); action.Generate_ASI(argTable.list_AgeSpecInc_StdGrp, argTable.list_SecondDiagnosisGroupDefinition, str_path + @"R) ASI study group " + argTable.str_year + ".txt"); // --計算SIR Console.WriteLine("run: Calculate_SIR"); action.Calculate_SIR(argTable.list_SIR, argTable.list_AgeSpecInc_AllPt , argTable.list_AgeSpecInc_StdGrp, argTable.list_SecondDiagnosisGroupDefinition); // --輸出SIR Console.WriteLine("run: Generate_SIR"); action.Generate_SIR(argTable.list_SIR, str_path + @"R) SIR " + argTable.str_year + ".txt"); argTable.GarbageCollection(); }
static void Main(string[] args) { string path = @"D:\Google Drive\NHIRD DRUG EXPOSURE ASTHMA\Raw Data\"; NHIRD_ArgTable argTable = new NHIRD_ArgTable("2010", 2000, 2013, path + @"OrderDefinition.csv"); GetActionBasedData.CD(argTable.databank_PrimaryActionBasedData_CD, path + @"Primary\2010 Less then 1 yo CD.txt", argTable.list_OrderGroupDefinision.Count); GetActionBasedData.OO(argTable.databank_PrimaryActionBasedData_CD, path + @"Primary\2010 Less then 1 yo CD.txt", argTable.list_OrderGroupDefinision.Count); Console.WriteLine("End Of Program."); Console.ReadKey(); }