Seq.groupBy<'T,'Key> (Función de F#)
Aplica una función de generación de claves a cada elemento de una secuencia y genera una secuencia de claves únicas y una secuencia de todos los elementos que tienen cada clave.
Espacio de nombres/Ruta de acceso del módulo: Microsoft.FSharp.Collections.Seq
Ensamblado: FSharp.Core (en FSharp.Core.dll)
// Signature:
Seq.groupBy : ('T -> 'Key) -> seq<'T> -> seq<'Key * seq<'T>> (requires equality)
// Usage:
Seq.groupBy projection source
Parámetros
projection
Tipo: 'T -> 'KeyFunción que transforma un elemento de la secuencia en una clave comparable.
source
Tipo: seq<'T>Secuencia de entrada.
Valor devuelto
Una secuencia de tuplas donde cada tupla contiene la clave única y una secuencia de todos los elementos que coinciden con la clave.
Comentarios
Esta función devuelve una secuencia que recorre la secuencia inicial completa en cuanto se itera por esa secuencia.Como resultado, esta función no se debe usar con secuencias grandes o infinitas.La función no hace ninguna suposición sobre la ordenación de la secuencia original.
Esta función se denomina GroupBy 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
El ejemplo siguiente muestra el uso de Seq.groupBy para agrupar los números pares e impares de una secuencia en dos secuencias independientes.
let sequence = seq { 1 .. 100 }
let printSeq seq1 = Seq.iter (printf "%A ") seq1; printfn ""
let sequences3 = Seq.groupBy (fun index ->
if (index % 2 = 0) then 0 else 1) sequence
sequences3 |> printSeq
Plataformas
Windows 8, Windows 7, Windows Server 2012, Windows Server 2008 R2
Información de versiones
Versiones de la biblioteca básica de F#
Se admite en: 2.0, 4.0, portables