예제 #1
0
 private TimeSeries GetEqualSeries(TimeSeries values1, TimeSeries values2)
 {
     TimeSeries timeSeries = new TimeSeries();
     for (int index = 0; index < values2.Count; ++index)
     {
         DateTime dateTime = values1.GetDateTime(index);
         if (values2.Contains(dateTime))
             timeSeries.Add(dateTime, values1[index]);
     }
     return timeSeries;
 }
예제 #2
0
 public double GetCovariance(TimeSeries series)
 {
     if (series == null)
     {
         throw new ArgumentException("Argument series should be of TimeSeries type");
     }
     double num = this.GetMean();
     double num2 = series.GetMean();
     double num3 = 0.0;
     double num4 = 0.0;
     for (int i = 0; i < this.Count; i++)
     {
         DateTime dateTime = this.GetDateTime(i);
         if (series.Contains(dateTime))
         {
             num4 += (this[i] - num) * (series[dateTime, SearchOption.Exact] - num2);
             num3 += 1.0;
         }
     }
     if (num3 <= 1.0)
     {
         return 0.0;
     }
     return num4 / (num3 - 1.0);
 }