# Array.average<^T> Function (F#)

Den Delimarsky|Last Updated: 6/8/2016
|
1 Contributor

Returns the average of the elements in the array.

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

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

## Syntax

``````// Signature:
Array.average : ^T [] -> ^T (requires ^T with static member (+) and ^T with static member DivideByInt and ^T with static member Zero)

// Usage:
Array.average array
``````

array Type: ^T[]

The input array.

## Exceptions

ExceptionCondition
ArgumentExceptionThrown when array is empty.

## Return Value

The average of the elements in the array.

## Remarks

This function cannot be used directly on an array of integers since it requires that the type support an exact division operation, which is indicated by the constraint that the element type must support DivideByInt Floating point types support `DivideByInt`. To compute the average of an array of integers, see the example in Array.averageBy.

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

## Example

The following code shows how to use Array.average.

``````
let average1 = Array.average [| 1.0 .. 10.0 |]
printfn "Average: %f" average1
// To get the average of an array of integers,
// use Array.averageBy to convert to float.
let average2 = Array.averageBy (fun elem -> float elem) [|1 .. 10 |]
printfn "Average: %f" average2
``````

Output

``````Average: 5.500000
Average: 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