データ集計に LINQ の GroupBy メソッドと Count メソッドを使用する
LINQ の GroupBy 演算子は、指定されたキーに基づいてデータを集計するための強力なツールです。 Count() メソッドと組み合わせると、グループ化された値の出現をカウントするために使用できます。
次のシナリオを想定します。UserInfo というデータセットがあり、これにはユーザーのメトリクスとその他の情報のレコードが含まれています。メトリックの発生数を取得するには、データをメトリックごとにグループ化し、各グループ内のレコード数をカウントする必要があります。
<code class="language-c#">// 示例数据集 List<userinfo> data = new List<userinfo> { new UserInfo { Name = "joe", Metric = 1, Day = "01/01/2011" }, new UserInfo { Name = "jane", Metric = 0, Day = "01/02/2011" }, new UserInfo { Name = "john", Metric = 2, Day = "01/03/2011" }, new UserInfo { Name = "jim", Metric = 3, Day = "01/04/2011" } };</code>
LINQ の GroupBy と Count を使用して目的の結果を達成する方法は次のとおりです。
<code class="language-c#">var metricCounts = data.GroupBy(info => info.Metric) .Select(group => new { Metric = group.Key, Count = group.Count() }) .OrderBy(x => x.Metric); foreach (var line in metricCounts) { Console.WriteLine($"{line.Metric} {line.Count}"); }</code>
このコードでは、GroupBy() 演算子が Metric プロパティごとにデータをグループ化し、IEnumerable
このコードの出力は次のようになります:
<code>0 1 1 1 2 1 3 1</code>
これは、LINQ を使用して、値をグループ化してカウントすることにより、集約されたデータを効率的に取得する方法を示します。 GroupBy と Count の使用法を理解することで、アプリケーション内のデータを効果的に操作し、要約することができます。
サンプルデータの Metric=0 の数がオリジナル記事と修正版で異なっているため、オリジナル記事の誤りである可能性がありますのでご注意ください。 変更されたバージョンは、コードの出力とより一貫性があります。
以上がLINQ の GroupBy メソッドと Count メソッドをデータ集計にどのように使用できますか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。