gpt4 book ai didi

c# - 如何使用 LINQ 分隔列条目和计数

转载 作者:行者123 更新时间:2023-11-30 23:13:07 24 4
gpt4 key购买 nike

示例数据表(UseDate 列):

Jun 2 2015 1:55PM
Jun 2 2015 2:05PM
Jul 3 2016 1:12PM
Jul 4 2016 2:43AM

我正在尝试使用 LINQ 这样做是最快的(因为记录将超过数千甚至更多)。

到目前为止,我有以下内容:

var dateAdded = dataTable.AsEnumerable()
.GroupBy(row => row.Field<String>("UseDate"))
.Select(grp => new { Date = grp.Key.ToString().Substring(0, grp.Key.LastIndexOf(' ')).Trim(), Count = grp.Key.ToString().Substring(0, grp.Key.LastIndexOf(' ')).Count() });

我得到以下信息:

Date = "Jun 2 2015", Count = 6
Date = "Jun 2 2015", Count = 6
Date = "Jul 3 2016", Count = 4
Date = "Jul 4 2016", Count = 4

我也不确定计数是如何进行的。

我想知道上面 DataTable 中每个日期(例如 Jun 2 2015)的计数。

所以上面会告诉我:

Date = "Jun 2 2015", Count = 2
Date = "Jul 3 2016", Count = 1
Date = "Jul 4 2016", Count = 1

最佳答案

首先,您需要对截断日期进行分组,因此选择该列,然后截断它。然后你可以得到每个分组的计数。

var dateAdded = dataTable.AsEnumerable()
.Select(row => row.Field<String>("UseDate"))
.Select(fullDate => fullDate.Substring(0, fullDate.LastIndexOf(' ')).Trim())
.GroupBy(truncatedDate => truncatedDate)
.Select(grp => new
{
Date = grp.Key,
Count = grp.Count()
});

关于c# - 如何使用 LINQ 分隔列条目和计数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43766101/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com