示例#1
0
 public static double cov(statistics s1, statistics s2)
 {
     try
     {
         if (s1.length() != s2.length())
         {
             return(double.NaN);
         }
         int    len     = s1.length();
         double sum_mul = 0;
         for (int i = 0; i <= len - 1; i++)
         {
             sum_mul += (s1.list[i] * s2.list[i]);
         }
         return((sum_mul - len * s1.mean() * s2.mean()) / (len - 1));
     }
     catch (Exception)
     {
         return(double.NaN);
     }
 }
示例#2
0
        public void initialForm(List <double> listDouble)
        {
            statistics sta = new statistics(listDouble.ToArray());

            lblMean.Text          = "均值= " + sta.mean().ToString("0.0");
            lblValueMax.Text      = "最大值= " + sta.max().ToString("0.0");
            lblValueMin.Text      = "最小值= " + sta.min().ToString("0.0");
            this.lblDataNum.Text  = "数据个数= " + sta.length().ToString("0");
            this.lblSum.Text      = "总和= " + listDouble.Sum().ToString("0.0");
            this.lblQ2.Text       = "Q2= " + sta.Q2().ToString("0.0");
            this.lblVariance.Text = "方差= " + sta.var().ToString("0.0");
        }
示例#3
0
 public double cov(statistics s)
 {
     try
     {
         if (this.length() != s.length())
         {
             return(double.NaN);
         }
         int    len     = this.length();
         double sum_mul = 0;
         for (int i = 0; i <= len - 1; i++)
         {
             sum_mul += (this.list[i] * s.list[i]);
         }
         return((sum_mul - len * this.mean() * s.mean()) / (len - 1));
     }
     catch (Exception)
     {
         return(double.NaN);
     }
 }