Пример #1
0
        public void Read()
        {
            var ofd = new OpenFileDialog();

            if (ofd.ShowDialog() == DialogResult.OK)
            {
                m_stat.Setd(ofd.FileName);
                m_stat.CalcMainParams();
            }
        }
Пример #2
0
        public static Vector FindParamsForThreeDim(STAT x1Stat, STAT x2Stat, STAT yStat)
        {
            int n = x1Stat.d.Length;

            //подсчет средних
            x1Stat.CalcMainParams();
            x2Stat.CalcMainParams();
            yStat.CalcMainParams();

            double x1x2 = 0, yx1 = 0, yx2 = 0;

            //перенос массивов в переменные
            var x1 = x1Stat.d;
            var x2 = x2Stat.d;
            var y  = yStat.d;

            for (int i = 0; i < n; i++)
            {
                //перенос значений массивов в переменные
                var x1Val = x1[i];
                var x2Val = x2[i];
                var yVal  = y[i];

                x1x2 += x1Val * x2Val;
                yx1  += yVal * x1Val;
                yx2  += yVal * x2Val;
            }

            x1x2 /= n;
            yx1  /= n;
            yx2  /= n;

            //перенос средних в переменные
            var x1Expectation = x1Stat.Expectation;
            var x2Expectation = x2Stat.Expectation;
            var yExpectation  = yStat.Expectation;


            //заполнение матрицы
            Matrix matrix = new Matrix(3, 3, new[]
            {
                1, x1Expectation, x2Expectation,
                x1Expectation, x1Stat.InitialMoment(2), x1x2,
                x2Expectation, x1x2, x2Stat.InitialMoment(2)
            });

            Vector b = new Vector(new[] { yExpectation, yx1, yx2 });

            return(matrix.Solve(b));
        }