Seq.groupBy<'T,'Key> 함수(F#)
시퀀스의 각 요소에 키 생성 함수를 적용하고 고유 키의 시퀀스와 각 키를 갖고 있는 모든 요소의 시퀀스를 생성합니다.
네임스페이스/모듈 경로: Microsoft.FSharp.Collections.Seq
어셈블리: FSharp.Core(FSharp.Core.dll)
// Signature:
Seq.groupBy : ('T -> 'Key) -> seq<'T> -> seq<'Key * seq<'T>> (requires equality)
// Usage:
Seq.groupBy projection source
매개 변수
projection
형식: 'T -> 'Key시퀀스의 요소를 비교 가능한 키로 변환하는 함수입니다.
source
형식: seq<'T>입력 시퀀스입니다.
반환 값
각 튜플에 고유한 키와 키와 일치하는 모든 요소의 시퀀스를 포함하는 튜플의 시퀀스입니다.
설명
이 함수는 시퀀스가 반복되는 즉시 전체 초기 시퀀스를 트래버스하는 시퀀스를 반환합니다. 결과적으로 이 함수는 매우 크거나 길이에 제한이 없는 시퀀스에 사용될 수 없습니다. 함수는 원래 시퀀스의 순서를 가정하지 않습니다.
컴파일된 어셈블리에서 이 함수의 이름은 GroupBy입니다. F# 이외의 언어에서 함수에 액세스하거나 리플렉션을 통해 함수에 액세스하는 경우 이 이름을 사용합니다.
예제
다음 예제에서는 시퀀스의 홀수 및 짝수를 두 개의 구분된 순서로 그룹화하도록 Seq.groupBy의 사용을 보여줍니다.
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
플랫폼
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