Condividi tramite


Funzione Seq.average<^T> (F#)

Restituisce la media degli elementi nella sequenza.

Percorso spazio dei nomi/modulo: Microsoft.FSharp.Collections.Seq

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

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

// Usage:
Seq.average source

Parametri

  • source
    Tipo: seq<^T>

    Sequenza di input.

Eccezioni

Eccezione

Condizione

ArgumentException

Generata se la sequenza di input non dispone di elementi.

ArgumentNullException

Generata se la sequenza di input è Null.

Valore restituito

La media.

Note

Viene calcolata una media degli elementi utilizzando l'operatore +, il metodo DivideByInt e la proprietà Zero associati al tipo di elemento.

Questa funzione non può essere utilizzata direttamente su una sequenza di numeri interi perché richiede che il tipo supporti un'operazione di divisione esatta, condizione indicata dal vincolo che il tipo di elemento supporti DivideByInt.

Questa funzione è denominata Average negli assembly compilati. Utilizzare questo nome se si accede alla funzione da un linguaggio diverso da F# o tramite reflection.

Esempio

Nell'esempio di codice riportato di seguito viene illustrato come utilizzare l'oggetto Seq.average e viene inoltre confrontato Seq.average con Seq.averageBy.

// 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

  

Piattaforme

Windows 8, Windows 7, Windows Server 2012, Windows Server 2008 R2

Informazioni sulla versione

Versioni della libreria di base F#

Supportato in: 2,0, 4,0, portabile

Vedere anche

Riferimenti

Modulo Collections.Seq (F#)

Spazio dei nomi Microsoft.FSharp.Collections (F#)