使用Deedle C#重新采样TimeSeries

时间:2016-02-21 17:11:14

标签: c# deedle

我想使用带有C#的Doodle重新采样时间戳系列。 跟随TimeSerie是以2Hz频率获得的信号(但可能更多)并且我想以1Hz频率对其进行重采样并在必要时进行插值。

Timestamp         Channel1
1448869364275310    1800
1448869364775350    1700
1448869365284910    1716
1448869365785650    1692
1448869366295300    1756
1448869366795510    1780

这是我的代码:

System.DateTime dtDateTime = new DateTime(1970, 1, 1, 0, 0, 0, 0, System.DateTimeKind.Utc);
                DateTime dt = dtDateTime.AddSeconds(Convert.ToDouble(1448869364275310) / 1000000.0);
List<DateTime> lt = new List<DateTime>();

for (int i = 0; i < 1; i++)
{
   DateTime dt1 = dt.AddSeconds(i);
   lt.Add(dt1);
}

var frame = Frame.ReadCsv(@"C:\\ff.csv",true,true,null,null,"\t",null,null,null);
var frameDate = frame.IndexRows<object>("Timestamp").SortRowsByKey();
var ser = frame.GetColumn<Decimal>("Channel1").Sample(lt.ToOrdinalSeries().Keys);

此代码仅剪切对应于1 Hz的索引处的值,而不对channel1值进行任何更改,不重新采样,不进行插值。 如何制作LinearSpline,CubicSpline? 拜托,有人可以帮帮我吗?

提前多多感谢

0 个答案:

没有答案