(From row In DT.AsEnumerable()
Group row By finalDate = row.Field(Of DateTime)("Final Date") Into Group
Let totalA = Group.Sum(Function(r) r.Field(Of Double)("A"))
Let totalB = Group.Sum(Function(r) r.Field(Of Double)("B"))
Select DT.Clone.LoadDataRow(New Object() {finalDate, totalA, totalB}, False)
).CopyToDataTable()
(From row In DT.AsEnumerable()
Group row By finalDate = row.Field(Of DateTime)("Final Date") Into Group
Let totalA = Group.Sum(Function(r) Convert.ToDouble(r.Field(Of String)("A")))
Let totalB = Group.Sum(Function(r) Convert.ToDouble(r.Field(Of String)("B")))
Select DT.Clone.LoadDataRow(New Object() {finalDate, totalA, totalB}, False)
).CopyToDataTable()