Seq.countBy<'T,'Key> (Función de F#)
Aplica una función de generación de clave a cada elemento de una secuencia y devuelve una secuencia que proporciona claves únicas y su número de apariciones en la secuencia original.
Espacio de nombres/Ruta de acceso del módulo: Microsoft.FSharp.Collections.Seq
Ensamblado: FSharp.Core (en FSharp.Core.dll)
// Signature: Seq.countBy : ('T -> 'Key) -> seq<'T> -> seq<'Key * int> (requires equality) // Usage: Seq.countBy projection source
Parámetros
projection
Tipo: 'T -> 'KeyUna función que transforma cada elemento de la secuencia de entrada en una clave que se comparará con las demás.
source
Tipo: seq<'T>Secuencia de entrada.
Excepciones
Excepción |
Condición |
---|---|
Se activa cuando la secuencia de entrada es Null. |
Valor devuelto
Una secuencia de claves únicas y su número de apariciones en la secuencia original.
Comentarios
Observe que esta función devuelve una secuencia que atraviesa toda la secuencia inicial en cuanto esa secuencia se itera. Como resultado, esta función no se debe usar con secuencias grandes o infinitas. La función no realiza suposiciones sobre el orden de la secuencia original.
Esta función se denomina CountBy en los ensamblados compilados. Si obtiene acceso a la función desde un lenguaje distinto de F# o mediante reflexión, use este nombre.
Ejemplo
En el ejemplo siguiente se muestra cómo usar Seq.countBy para determinar el número de elementos en una secuencia que son impares o pares.
let mySeq1 = seq { 1.. 100 }
let printSeq seq1 = Seq.iter (printf "%A ") seq1; printfn ""
let seqResult = Seq.countBy (fun elem ->
if (elem % 2 = 0) then 0 else 1) mySeq1
printSeq seqResult
Plataformas
Windows 8, Windows 7, Windows Server 2012, Windows Server 2008 R2
Información de versiones
Versiones de la biblioteca básica de F#
Admitido en: 2.0, 4.0, Portable