Share via


Seq.countBy<'T,'Key> 함수(F#)

시퀀스의 각 요소에 키 생성 함수를 적용하고 고유한 키 및 원본 시퀀스에서 이들 키가 나타나는 수를 생성하는 시퀀스를 반환합니다.

네임스페이스/모듈 경로: Microsoft.FSharp.Collections.Seq

어셈블리: FSharp.Core(FSharp.Core.dll)

// Signature:
Seq.countBy : ('T -> 'Key) -> seq<'T> -> seq<'Key * int> (requires equality)

// Usage:
Seq.countBy projection source

매개 변수

  • projection
    형식: 'T -> 'Key

    입력 시퀀스의 각 항목을 서로 비교할 키로 변환하는 함수입니다.

  • source
    형식: seq<'T>

    입력 시퀀스입니다.

예외

Exception

Condition

ArgumentNullException

입력 시퀀스가 null인 경우 throw됩니다.

반환 값

원래 시퀀스에서의 발생 횟수와 고유 키의 시퀀스입니다.

설명

이 함수는 시퀀스가 반복될 때마다 전체 초기 시퀀스를 트래버스하는 시퀀스를 반환합니다. 결과적으로 이 함수는 매우 크거나 길이에 제한이 없는 시퀀스에 사용될 수 없습니다. 함수는 원래 시퀀스의 순서를 가정하지 않습니다.

컴파일된 어셈블리에서 이 함수의 이름은 CountBy입니다. F# 이외의 언어에서 함수에 액세스하거나 리플렉션을 통해 함수에 액세스하는 경우 이 이름을 사용합니다.

예제

다음 예제에서는 요소의 수를 홀수 또는 짝수인 시퀀스로 결정하도록 Seq.countBy의 사용을 보여줍니다.

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
  

플랫폼

Windows 7, Windows Vista SP2, Windows XP SP3, Windows XP x64 SP2, Windows Server 2008 R2, Windows Server 2008 SP2, Windows Server 2003 SP2

버전 정보

F# 런타임

지원되는 버전: 2.0, 4.0

Silverlight

지원되는 버전: 3

참고 항목

참조

Collections.Seq 모듈(F#)

Microsoft.FSharp.Collections 네임스페이스(F#)