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

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

2024.02.24
XML
カテゴリ: LINQ


Imports System.Linq


Module Module1

    Sub Main()

        ' サンプルのDataTableを作成

        Dim table As New DataTable()

        table.Columns.Add("Column1")

        table.Columns.Add("Column2")

        table.Columns.Add("Column3")

        table.Columns.Add("Column4", GetType(Double))


        ' サンプルのデータを追加

        table.Rows.Add("Group1", "Item1", "SubItem1", 10.0)

        table.Rows.Add("Group1", "Item1", "SubItem2", 15.0)

        table.Rows.Add("Group1", "Item2", "SubItem1", 20.0)

        table.Rows.Add("Group2", "Item1", "SubItem1", 25.0)

        table.Rows.Add("Group2", "Item2", "SubItem2", 30.0)


        ' LINQクエリを使用して列1、列2、列3でグループ化し、列4の平均値を求める

        Dim query = From row In table.AsEnumerable()

                    Group row By Key = New With {

                        Key .Column1 = row.Field(Of String)("Column1"),

                        Key .Column2 = row.Field(Of String)("Column2"),

                        Key .Column3 = row.Field(Of String)("Column3")

                    } Into Group

                    Select New With {

                        .Column1 = Key.Column1,

                        .Column2 = Key.Column2,

                        .Column3 = Key.Column3,

                        .AverageColumn4 = Group.Average(Function(r) r.Field(Of Double)("Column4"))

                    }


        ' 結果を表示

        For Each item In query

            Console.WriteLine("Column1: {0}, Column2: {1}, Column3: {2}, AverageColumn4: {3}", item.Column1, item.Column2, item.Column3, item.AverageColumn4)

        Next

    End Sub

End Module







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

Last updated  2024.02.24 00:08:09


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

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