Freigeben über


Seq.averageBy<'T,^U>-Funktion (F#)

Aktualisiert: August 2010

Gibt den Durchschnitt der Ergebnisse zurück, die durch Anwenden der Funktion auf die einzelnen Elemente der Sequenz generiert wurden.

Namespace/Modulpfad: Microsoft.FSharp.Collections.Seq

Assembly: FSharp.Core (in FSharp.Core.dll)

// Signature:
Seq.averageBy : ('T -> ^U) -> seq<'T> -> ^U (requires ^U with static member (+) and ^U with static member DivideByInt and ^U with static member Zero)

// Usage:
Seq.averageBy projection source

Parameter

  • projection
    Typ: 'T -> ^U

    Eine Funktion, mit der die einzelnen Elemente der Sequenz umgewandelt werden.

  • source
    Typ: seq<'T>

    Die Eingabesequenz.

Ausnahmen

Ausnahme

Bedingung

ArgumentException

Wird ausgelöst, wenn die Eingabesequenz 0 (null) Elemente aufweist.

ArgumentNullException

Wird ausgelöst, wenn die Eingabesequenz NULL ist.

Rückgabewert

Der Durchschnitt der Ergebnisse der Anwendung der projection-Funktion auf die Sequenzelemente.

Hinweise

Der Durchschnitt der Elemente wird mit dem +-Operator, der DivideByInt-Methode und der Zero-Eigenschaft für den generierten Typ ermittelt.

Der Name dieser Funktion in kompilierten Assemblys lautet AverageBy. Verwenden Sie diesen Namen, wenn Sie in einer anderen .NET-Sprache als F# oder durch Reflektion auf die Funktion zugreifen.

Beispiel

Im folgenden Codebeispiel wird die Verwendung von Seq.averageBy veranschaulicht. Außerdem werden Seq.average und Seq.averageBy verglichen.

// You can use Seq.average to average elements of a list, array, or sequence.
let average1 = Seq.average [ 1.0 .. 10.0 ]
printfn "Average: %f" average1
// To average a sequence of integers, use Seq.averageBy to convert to float.
let average2 = Seq.averageBy (fun elem -> float elem) (seq { 1 .. 10 })
printfn "Average: %f" average2

Output

  

Plattformen

Windows 7, Windows Vista SP2, Windows XP SP3, Windows XP x64 SP2, Windows Server 2008 R2, Windows Server 2008 SP2, Windows Server 2003 SP2

Versionsinformationen

F#-Runtime

Unterstützt in: 2.0, 4.0

Silverlight

Unterstützt in: 3

Siehe auch

Weitere Ressourcen

Collections.Seq-Modul (F#)

Microsoft.FSharp.Collections-Namespace (F#)

Änderungsprotokoll

Datum

Versionsgeschichte

Grund

August 2010

Codebeispiel hinzugefügt.

Informationsergänzung.