C # Datatabili: calcolo della media in una colonna
-
21-12-2019 - |
Domanda
Sto cercando di ottenere la media P & L in una colonna.La colonna è di tipo doppia, tuttavia continuo a ricevere un errore dicendo quanto segue:
Informazioni aggiuntive: Errore di sintassi nell'argomento aggregato: Aspettarsi un argomento a colonna singola con possibile qualificatore "figlio".
Si verifica quando questa linea è in esecuzione:
avgFiveSbefore = (double)dt.Compute("AVG(5sBeforePnL)", "");
.
Inoltre, ecco un codice aggiuntivo da chiarire:
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)", "");
. Soluzione
Prova a racchiudere il nome della colonna in parentesi quadre.
avgFiveSbefore = (double)dt.Compute("AVG([5sBeforePnL])", "");
.
Puoi anche usare LINQ per fare lo stesso simile:
double avgFiveSbefore = dt.AsEnumerable()
.Average(r =>
r.Field<double>(Columns.FiveSecBeforePnL));
. Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow