コード例 #1
0
        private void btnTestSpearman_Click(object sender, EventArgs e)
        {
            var res = RandomExcerptChecker.TestSpearmanMethod(
                (new TimeSeries(TimeSeriesEnvironment.Current.TimeSeries, false)).Excerpt);

            lblSpearmanStat.Text     = string.Format("|{0:0.0000}|", res.Statistics);
            lblSpearmanQuantile.Text = res.Quantile.ToString("0.0000");
            if (res.IsRandom)
            {
                lblSpearmanComp.Text = "≤";
                lblSpearmanTest.Text = "Time series is random.";
            }
            else
            {
                lblSpearmanComp.Text = ">";
                if (res.Statistics < 0)
                {
                    lblSpearmanTest.Text = "Time series has decreasing trend.";
                }
                else
                {
                    lblSpearmanTest.Text = "Time series has increasing trend.";
                }
            }
            pnlSpearmanTest.Visible = true;
        }
コード例 #2
0
        private void btnShowCorrelogram_Click(object sender, EventArgs e)
        {
            var ts = new TimeSeries(TimeSeriesEnvironment.Current.TimeSeries, false);

            int k;

            if (!int.TryParse(txtCorrelogramK.Text, out k) || k < 0 || k > ts.Count - 1)
            {
                MessageBox.Show("Incorrect K variable for processing correlogram.");
                return;
            }

            var cor = RandomExcerptChecker.GetCorrelogram(ts.Excerpt, k);

            Series crlgrm = new Series("TS Correlogram")
            {
                ChartType = SeriesChartType.Column
            };

            dgCorrelation.Rows.Clear();
            for (int i = 0; i < cor.Count; i++)
            {
                crlgrm.Points.AddXY(i, cor[i]);
                var res = RandomExcerptChecker.TestCorrelation(cor[i], ts.Count, i);
                dgCorrelation.Rows.Add(i,
                                       string.Format("|{0:0.0000}|", res.Statistics),
                                       res.IsRandom ? "≤" : ">",
                                       res.Quantile.ToString("0.0000"));
            }

            chartTS.Series.Clear();
            chartTS.Series.Add(crlgrm);
            chartTS.ResetAutoValues();
        }