AI 에이전트의 경우: 문서 인덱스는 https://www.mongodb.com/ko-kr/docs/llms.txt에서 사용할 수 있으며, 모든 페이지의 마크다운 버전은 어떤 URL 경로에 .md를 추가하여 사용할 수 있습니다.
See how MongoDB 9.0 delivers up to 2x higher throughput.
MongoDB Branding Shape
Register now >
Docs Menu

$ 백분위 (표현식)

$percentile

숫자 배열 에 대해 계산된 하나 이상의 백분위 값을 반환합니다.

참고

명확화

이 페이지에서는 $percentile가 입력 값 배열 에 대해 백분위 값을 계산하는 표현식 으로 사용되는 경우에 대해 설명합니다.

다음과 같은 다른 컨텍스트에서도 $percentile를 사용할 수 있습니다.

{
$percentile: {
input: <expression>,
p: [ <expression1>, <expression2>, ... ],
method: <string>
}
}
필드
유형
설명

input

배열

둘 중 하나를 사용하면 됩니다.

  • 배열 로 해석되는 표현식 입니다. 예시 들어 $scores이며 문서 필드 $scores에 숫자 값 배열 이 포함되어 있습니다.

  • 각 표현식이 숫자 값으로 평가되는 표현식의 배열 . 예시: [ "$field1", "$field2", "$field3" ].

$percentile 배열 의 모든 숫자 값에 대해 백분위 값을 계산합니다. 숫자가 아닌 값은 무시됩니다.

p

표현식

$percentile p의 각 요소에 대한 백분위 값을 계산합니다. 이러한 요소는 계산할 분위수를 지정하며 0.0 ~ 1.0 범위 의 숫자 값이어야 합니다.

$percentile p의 요소와 동일한 순서로 결과를 반환합니다.

method

문자열

MongoDB 백분위 값을 계산하는 데 사용하는 방법입니다. 메서드는 'approximate'이어야 합니다.

표현식 으로 사용되는 경우 $percentile는 method: 'approximate'이 지정된 경우에도 근사치보다 항상 정확한 백분위 계산 알고리즘 사용합니다. 이는 표현식이 모든 입력 값을 메모리에 유지할 수 있는 제한된 크기의 배열에서 작동하기 때문입니다.

testScores collection을 만듭니다.

db.testScores.insertMany( [
{ studentId: "2345", scores: [ 62, 81, 80, 75, 68 ] },
{ studentId: "2356", scores: [ 60, 83, 79, 72, 65 ] },
{ studentId: "2358", scores: [ 67, 82, 78, 70, 84 ] },
{ studentId: "2367", scores: [ 64, 72, 77, 58, 91 ] },
{ studentId: "2369", scores: [ 60, 53, 72, 85, 63 ] }
] )

다음 파이프라인 $percentile을 사용하여 각 학생의 25, 50, 75 백분위 테스트 점수를 계산합니다.

db.testScores.aggregate( [
{
$project: {
_id: 0,
studentId: 1,
testPercentiles: {
$percentile: {
input: "$scores",
p: [ 0.25, 0.5, 0.75 ],
method: 'approximate'
}
}
}
}
] )

앞의 파이프라인 에서$percentile가 포함된 $project는 각 학생의 scores 배열 25, 50, 75 백분위 백분위 계산하여 testPercentiles로 반환합니다.

이 페이지 평가하기

이 페이지의 내용