- void Main()
- {
- List<DateTime> ts = DateTimeData();
- //group by 15 minutes
- Dictionary<DateTime,List<DateTime>> pivotDict = ts.GroupBy(t =>
- {
- var temp = t.AddMinutes(-(t.Minute % 15));
- temp = temp.AddSeconds(-t.Second);
- temp = temp.AddMilliseconds(-t.Millisecond);
- return temp;
- }).ToDictionary(gp => gp.Key, gp => gp.ToList());
- pivotDict.Dump();
- }
- public List<DateTime> DateTimeData()
- {
- var ts = new List<DateTime>();
- ts.Add(DateTime.Parse("2020/06/20 22:20:05"));
- ts.Add(DateTime.Parse("2020/06/20 22:21:06"));
- ts.Add(DateTime.Parse("2020/06/20 22:22:09"));
- ts.Add(DateTime.Parse("2020/06/20 22:24:01"));
- ts.Add(DateTime.Parse("2020/06/20 22:28:09"));
- ts.Add(DateTime.Parse("2020/06/20 22:33:01"));
- ts.Add(DateTime.Parse("2020/06/20 22:34:05"));
- ts.Add(DateTime.Parse("2020/06/20 22:38:12"));
- ts.Add(DateTime.Parse("2020/06/20 22:40:41"));
- ts.Add(DateTime.Parse("2020/06/20 22:42:12"));
- ts.Add(DateTime.Parse("2020/06/20 22:45:52"));
- ts.Add(DateTime.Parse("2020/06/20 22:46:10"));
- ts.Add(DateTime.Parse("2020/06/20 22:48:23"));
- ts.Add(DateTime.Parse("2020/06/20 22:53:45"));
- ts.Add(DateTime.Parse("2020/06/20 22:55:24"));
- ts.Add(DateTime.Parse("2020/06/20 22:56:12"));
- ts.Add(DateTime.Parse("2020/06/20 23:01:31"));
- ts.Add(DateTime.Parse("2020/06/20 23:02:31"));
- ts.Add(DateTime.Parse("2020/06/20 23:08:12"));
- ts.Add(DateTime.Parse("2020/06/20 23:09:23"));
- ts.Add(DateTime.Parse("2020/06/20 23:10:23"));
- ts.Add(DateTime.Parse("2020/06/20 23:18:42"));
- ts.Add(DateTime.Parse("2020/06/20 23:19:44"));
- ts.Add(DateTime.Parse("2020/06/20 23:22:55"));
- ts.Add(DateTime.Parse("2020/06/20 23:23:12"));
- ts.Add(DateTime.Parse("2020/06/20 23:28:10"));
- ts.Add(DateTime.Parse("2020/06/20 23:31:02"));
- ts.Add(DateTime.Parse("2020/06/20 23:33:12"));
- ts.Add(DateTime.Parse("2020/06/20 23:38:32"));
- ts.Add(DateTime.Parse("2020/06/20 23:40:11"));
- return ts;
- }