ホームページ >バックエンド開発 >C++ >LINQ GroupBy を使用してデータセット内のメトリックの出現をカウントするにはどうすればよいですか?

LINQ GroupBy を使用してデータセット内のメトリックの出現をカウントするにはどうすればよいですか?

Linda Hamilton
Linda Hamiltonオリジナル
2025-01-22 00:57:08282ブラウズ

How Can LINQ GroupBy Be Used to Count Metric Occurrences in a Dataset?

LINQ GroupBy を使用して出現回数をカウントします

LINQ は、指定されたキーに基づいてデータ項目をグループ化し、その出現回数をカウントする便利な方法を提供します。次のデータセットについて考えてみましょう:

<code>UserInfo(name, metric, day, other_metric)</code>

サンプルデータ:

<code>joe  1 01/01/2011 5
jane 0 01/02/2011 9
john 2 01/03/2011 0
jim  3 01/04/2011 1
jean 1 01/05/2011 3
jill 2 01/06/2011 5
jeb  0 01/07/2011 3
jenn 0 01/08/2011 7</code>

目標は、メトリクスを順番にリストし、その総出現数をリストするテーブルを作成することです。適切な LINQ 式は次のとおりです:

<code>var counts = data.GroupBy(i => i.metric)
                .Select(g => new { Metric = g.Key, Count = g.Count() })
                .OrderBy(r => r.Metric);</code>

次のように動作します:

  1. GroupBy: GroupBy メソッドは、metric 属性に基づいて data 内の要素をグループ化します。これにより、グループのコレクションが生成され、各グループは一意のメトリック値を表します。
  2. Select: グループごとに、Select メソッドは 2 つのプロパティを持つ新しいオブジェクトを作成します: Metric (グループのキー、メトリック値を表す) と Count (グループ内の要素の数、メトリック) の発生数) を表します。
  3. OrderBy: 最後に、OrderBy メソッドは、生成されたオブジェクト コレクションを Metric 属性に従って並べ替え、インジケーターが昇順に配置されるようにします。

この LINQ 式を実行すると、目的の出力が生成されます:

<code>0 3
1 2
2 2
3 1</code>

以上がLINQ GroupBy を使用してデータセット内のメトリックの出現をカウントするにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。