「東雲 忠太郎」の平凡な日常のできごと

「東雲 忠太郎」の平凡な日常のできごと

2024.02.25
XML
カテゴリ: LINQ


using System;

using System.Data;

using System.Linq;


class Program

{

    static void Main()

    {

        // サンプルのDataTableを作成します

        DataTable table = new DataTable();

        table.Columns.Add("Column1", typeof(int));

        table.Columns.Add("Column2", typeof(string));

        table.Columns.Add("Column3", typeof(double));

        table.Columns.Add("Column4", typeof(double));


        // サンプルデータを追加します

        table.Rows.Add(1, "A", 10.0, 100.0);

        table.Rows.Add(1, "A", 20.0, 200.0);

        table.Rows.Add(2, "B", 30.0, 300.0);

        table.Rows.Add(2, "B", 40.0, 400.0);


        // LINQを使用して列1、列2、列3でグループ化し、列4の平均値を求めます

        var result = from DataRow row in table.Rows

                     group row by new { Column1 = row.Field<int>("Column1"), Column2 = row.Field<string>("Column2"), Column3 = row.Field<double>("Column3") } into grp

                     select new

                     {

                         Column1 = grp.Key.Column1,

                         Column2 = grp.Key.Column2,

                         Column3 = grp.Key.Column3,

                         AvgColumn4 = grp.Average(r => r.Field<double>("Column4"))

                     };


        // 結果を出力します

        foreach (var item in result)

        {

            Console.WriteLine($"Column1: {item.Column1}, Column2: {item.Column2}, Column3: {item.Column3}, AvgColumn4: {item.AvgColumn4}");

        }

    }

}







お気に入りの記事を「いいね!」で応援しよう

Last updated  2024.02.25 07:17:37


【毎日開催】
15記事にいいね!で1ポイント
10秒滞在
いいね! -- / --
おめでとうございます!
ミッションを達成しました。
※「ポイントを獲得する」ボタンを押すと広告が表示されます。
x

© Rakuten Group, Inc.
Create a Mobile Website
スマートフォン版を閲覧 | PC版を閲覧
Share by: