Share via


List.averageBy<'T,^U> Function (F#)

Returns the average of the elements generated by applying the function to each element of the list.

Namespace/Module Path: Microsoft.FSharp.Collections.List

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

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

// Usage:
List.averageBy projection list

Parameters

  • projection
    Type: 'T -> ^U

    The function to transform the list elements into the type to be averaged.

  • list
    Type: 'Tlist

    The input list.

Exceptions

Exception

Condition

ArgumentException

Thrown when the list is empty.

Return Value

The resulting average.

Remarks

This function is named AverageBy in compiled assemblies. If you are accessing the member from a language other than F#, or through reflection, use this name.

Example

The following code example illustrates the use of List.averageBy.

let avg2 = List.averageBy (fun elem -> float elem) [1 .. 10]
printfn "%f" avg2

Output

5.500000

Platforms

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

Version Information

F# Core Library Versions

Supported in: 2.0, 4.0, Portable

See Also

Reference

Collections.List Module (F#)

Microsoft.FSharp.Collections Namespace (F#)