4

列の平均 P&L を取得しようとしています。列は double 型ですが、次のようなエラーが表示され続けます。

追加情報: 集計引数の構文エラー: 可能性のある '子' 修飾子を持つ単一の列引数が必要です。

これは、次の行が実行されているときに発生します。

avgFiveSbefore = (double)dt.Compute("AVG(5sBeforePnL)", "");

また、明確にするために追加のコードを次に示します。

dt.Columns.Add(Columns.FiveSecBeforePnL, typeof(double));

foreach(DataRow row in dt.Rows)
{
  row[Columns.FiveSecBeforePnL] = some value;
}

double avgFiveSbefore;
avgFiveSbefore = (double)dt.Compute("AVG(5sBeforePnL)", "");
4

1 に答える 1

7

列名を角かっこで囲んでみてください。

avgFiveSbefore = (double)dt.Compute("AVG([5sBeforePnL])", "");

LINQ を使用して同じことを行うこともできます。

double avgFiveSbefore = dt.AsEnumerable()
                            .Average(r =>
                                r.Field<double>(Columns.FiveSecBeforePnL));
于 2014-02-25T18:47:22.580 に答える