Seq.countBy<'T,'Key>, fonction (F#)
Applique une fonction génératrice de clé à chaque élément d'une séquence et retourne une séquence qui produit des clés uniques et leur nombre d'occurrences dans la séquence d'origine.
Espace de noms/Chemin du module : Microsoft.FSharp.Collections.Seq
Assembly : FSharp.Core (in FSharp.Core.dll)
// Signature: Seq.countBy : ('T -> 'Key) -> seq<'T> -> seq<'Key * int> (requires equality) // Usage: Seq.countBy projection source
Paramètres
projection
Type : 'T -> 'KeyFonction transformant chaque élément de la séquence d'entrée en une clé à comparer aux autres.
source
Type : seq<'T>Séquence d'entrée.
Exceptions
Exception |
Condition |
---|---|
Levée quand la séquence d'entrée est null. |
Valeur de retour
Séquence de clés uniques et leur nombre d'occurrences dans la séquence d'origine.
Notes
Notez que cette fonction retourne une séquence qui parcourt la séquence initiale entière dès que la séquence est itérée. Ainsi, cette fonction ne doit pas être utilisée avec des séquences importantes ou infinies. La séquence n'avance aucune hypothèse quant à l'ordre de la séquence d'origine.
Cette fonction se nomme CountBy dans des assemblys compilés. Si vous accédez à la fonction depuis un autre langage que F#, ou par réflexion, utilisez ce nom.
Exemple
L'exemple suivant montre l'utilisation de Seq.countBy pour déterminer le nombre d'éléments qui sont pairs ou impairs dans une séquence.
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
Plateformes
Windows 8, Windows 7, Windows Server 2012, Windows Server 2008 R2
Informations de version
Version de bibliothèque principale F#
Prise en charge dans : 2.0, 4.0, portables