Exemple #1
0
 public static void toolStripValidateOneRule(object sender, EventArgs e)
 {
     var t = Task.Factory.StartNew(() =>
     {
         TwoColorBall twoColorBall = new TwoColorBall(Config.GetConfig<int>("CalculateRows"));
         bool[] res = twoColorBall.ValidateRuleList(new RuleInfo[] { GetCurrentRule() })[0];
         double rate = ((double )res.Where(n => n).Count()) /(double )res.Length;
         MainForm.FilterDM.dgv.CurrentRow.Cells[6].Value = rate.ToString("F4");
     });
 }
Exemple #2
0
 /// <summary>
 /// 交叉验证功能:几个规则同时进行验证,准确率在下方状态显示,也包括了单独的验证
 /// </summary>
 public static void toolStripCrossValidate_Click(object sender, EventArgs e)
 {
     TwoColorBall twoColorBall = new TwoColorBall(Config.GetConfig<int>("CalculateRows"));
     var t = Task.Factory.StartNew(() =>
     {
         bool[][] result = twoColorBall.ValidateRuleList(GetRuleList(sender, e));
         //TODO:通过得到的结果,计算每一期中满足条件的个数
         int[] resa = GetValue(result);
         double[] res = result.Select(n => ((double)n.Where(k => k).Count() / (double)n.Count())).ToArray();
         for (int i = 0; i < res.Length; i++) MainForm.FilterDM.dgv.Rows[i].Cells[6].Value = res[i].ToString("F4");
         MainForm.FilterDM.stausInfoShow1.SetToolInfo2("交叉验证概率(%):" +
             (TwoColorBall.CrossValidate(result) * 100).ToString("F4"));
     });
 }
Exemple #3
0
 //右键过滤
 private void toolStripFilter_Click(object sender, EventArgs e)
 {
     if (twoColorBall == null)
         twoColorBall = new TwoColorBall(Config.GetConfig<int>("CalculateRows"));
     DataFilter.CreateForm(GetRuleList()).ShowDialog();
     GetData();
 }
Exemple #4
0
 /// <summary>
 /// 交叉验证功能:几个规则同时进行验证,准确率在下方状态显示,也包括了单独的验证
 /// </summary>
 private void toolStripCrossValidate_Click(object sender, EventArgs e)
 {
     if (twoColorBall == null)
         twoColorBall = new TwoColorBall(Config.GetConfig<int>("CalculateRows"));
     var t = Task.Factory.StartNew(() =>
     {
         bool[][] result = twoColorBall.ValidateRuleList(GetRuleList());
         double[] res = result.Select(n => ((double)n.Where(k => k).Count() / (double)n.Count())).ToArray();
         for (int i = 0; i < res.Length; i++) dgv.Rows[i].Cells[6].Value = res[i].ToString("F4");
         this.stausInfoShow1.SetToolInfo2("交叉验证概率(%):" +
             (TwoColorBall.CrossValidate(result) * 100).ToString("F4"));
     });
 }
Exemple #5
0
 //右键过滤
 public static void toolStripFilter_Click(object sender, EventArgs e)
 {
     TwoColorBall twoColorBall = new TwoColorBall(Config.GetConfig<int>("CalculateRows"));
     DataFilter.CreateForm(GetRuleList(sender, e)).ShowDialog();
     MainForm.FilterDM.GetData();
 }