Excel 에서 백분위수 또는 사분위수를 계산할 때 0 을 무시하려면 어떻게 해야 하나요?
Excel 에서 PERCENTILE 또는 QUARTILE 함수를 사용할 때 사용자들은 종종 자신의 데이터 범위에 0 값이 포함된 상황에 직면합니다. 기본적으로 이 함수들은 계산에 0 을 포함하며, 특히 0 이 해당 맥락에서 의미 있는 데이터를 나타내지 않을 경우 백분위수나 사분위수 값을 크게 낮추어 결과에 상당한 영향을 줄 수 있습니다. 보다 정확한 통계 분석을 위해 백분위수나 사분위수를 계산할 때 0 값을(를) 완전히 무시하고자 할 수 있습니다. 이 튜토리얼에서는 Excel 에서 이 문제를 효율적으로 해결하기 위한 여러 가지 실용적인 기법을 소개합니다。 여기에는 기본 제공 수식 접근법, VBA 솔루션 및 사용자의 요구에 가장 적합한 방법을 선택할 수 있도록 도와주는 적절한 시나리오 논의가 포함됩니다。
PERCENTILE 또는 QUARTILE 에서 0 무시하기
배열 수식을 사용하여 0 을 무시한 PERCENTILE 계산
0 을 무시하면서 백분위수를 계산하려면 0 보다 큰 값만 평가하는 배열 수식을 사용할 수 있습니다。
결과를 표시할 빈 셀을 선택하고 다음 수식을 입력하세요:
=PERCENTILE(IF(A1:A13>0,A1:A13),0.3) 수식을 입력한 후 Enter 키만 누르지 말고 반드시Ctrl + Shift + Enter를 눌러야 합니다. 이는 배열 수식이기 때문입니다. 그러면 Excel 이 수식을 중괄호{ }로 감싸 올바르게 입력되었음을 나타냅니다。 이 수식에서:
- A1:A13는 귀하의 데이터 범위입니다。 필요에 따라 직접 워크시트에 맞게 조정하세요。
- 0.3은(는) 30 번째백분위수를 지정합니다. 이 값을 원하는 백분위수로 변경할 수 있습니다(예: 0.75 은(는) 75)번째백분위수)。[ [TN_24_END]]
이 방법은 결측치나 무효 측정값과 같은 0 이 통계 결과에 영향을 주는 것을 방지하고자 할 때 특히 유용합니다。
Enter 키만 누르면 제대로 작동하지 않으므로 반드시Ctrl + Shift + Enter를 사용해야 합니다。 또한 집계 함수 내부에IF(...)가 포함된 수식은 대규모 데이터셋에서 성능이 저하될 수 있습니다。

배열 수식을 사용하여 0 을 무시한 QUARTILE 계산
사분위수의 경우에도 비슷한 방법을 사용할 수 있습니다。 결과를 표시할 셀을 선택하고 다음을 입력하세요:
=QUARTILE(IF(A1:A18>0,A1:A18),1) 수식을 입력한 후 배열 수식으로 확인하려면Ctrl + Shift + Enter를 누르세요。
- A1:A18은(는) 표본 데이터 범위입니다(필요에 따라 변경하세요)。
- 1는 첫 번째 사분위수(25)번째백분위수)를 의미합니다. 중앙값에는 2 을(를), 세 번째 사분위수(75 번째백분위수)에는 3 을(를) 사용할 수 있습니다。
수식은 숫자 값에 대해서만 작동하므로 데이터 범위에 텍스트나 오류 셀이 포함되지 않도록 주의하세요. 이 솔루션은 VBA 나 추가 기능 없이 빠르게 계산이 필요한 중간 규모 데이터셋에 가장 적합합니다。

VBA 매크로를 사용하여 0 을 제외하고 백분위수/사분위수 필터링 및 계산
VBA(Visual Basic for Applications)를 사용하여 0 값을(를) 자동으로 필터링한 후 나머지 데이터에 대해 백분위수 또는 사분위수를 계산할 수도 있습니다。 이 방법은 대용량 데이터셋을 처리하거나 수작업으로 수식을 입력하지 않고도 반복적으로 절차를 수행하고자 할 때 특히 실용적입니다。
적용 가능한 시나리오:고급 사용자, 반복 작업 또는 복잡한 범위에 이상적입니다。 코드를 사용자 정의하면 원하는 백분위수 또는 사분위수 인덱스와 데이터 범위를 자유롭게 처리할 수 있습니다。
1.Excel 에서개발 도구탭으로 이동하세요。 탭이 보이지 않으면 리본을(를) 마우스 오른쪽 버튼으로 클릭하고리본 사용자 지정을(를) 선택한 후개발 도구를 체크하세요。 그런 다음개발 도구>Visual Basic을(를) 클릭하세요。
2.Microsoft Visual Basic for Applications창에서삽입>모듈을(를) 클릭하세요。
3.다음 VBA 코드를 모듈에 복사하여 붙여넣으세요:
Sub FilterZeroAndPercentile()
Dim rng As Range
Dim ws As Worksheet
Dim arr As Variant
Dim filteredArr As Variant
Dim i As Long, count As Long
Dim percentileVal As Double
Dim quartileVal As Double
Dim pctl As Double
Dim quartIdx As Integer
On Error Resume Next
xTitleId = "KutoolsforExcel"
Set rng = Application.Selection
Set rng = Application.InputBox("Select the data range (numbers only)", xTitleId, rng.Address, Type:=8)
If rng Is Nothing Then Exit Sub
' Prompt for percentile value (e.g., 0.75 for 75th percentile)
pctl = Application.InputBox("Enter percentile value between 0 and 1 (e.g., 0.75 for 75th percentile)", xTitleId, "0.75", Type:=1)
' Prompt for quartile index (1, 2, 3, 4)
quartIdx = Application.InputBox("Enter quartile index (e.g., 1 for first quartile)", xTitleId, "1", Type:=1)
arr = rng.Value
count = 0
' Count non-zero numbers
For i = 1 To UBound(arr, 1)
If arr(i, 1) > 0 Then
count = count + 1
End If
Next i
If count = 0 Then
MsgBox "No non-zero data found!", vbExclamation, xTitleId
Exit Sub
End If
ReDim filteredArr(1 To count)
count = 0
For i = 1 To UBound(arr, 1)
If arr(i, 1) > 0 Then
count = count + 1
filteredArr(count) = arr(i, 1)
End If
Next i
' Calculate percentile / quartile
percentileVal = Application.WorksheetFunction.Percentile(filteredArr, pctl)
quartileVal = Application.WorksheetFunction.Quartile(filteredArr, quartIdx)
MsgBox "Percentile (" & pctl & "): " & percentileVal & vbCrLf & _
"Quartile (" & quartIdx & "): " & quartileVal, vbInformation, xTitleId
End Sub 4.VBA 창에서
실행 단추를 클릭하거나F5를 눌러 매크로를 실행하세요. 그러면 숫자만 포함된 데이터 범위를 선택하라는 메시지가 표시되고, 원하는 백분위수(예: 0.3 은(는) 30)번째백분위수)와 사분위수 인덱스(예: 첫 번째 사분위수의 경우 1)를 지정하라는 요청이 이어집니다。 매크로는 자동으로 0 값을(를) 필터링하여 결과를 메시지 상자에 표시합니다。
장점:대용량 또는 불규칙한 데이터를 신속하게 처리하고 0 값을(를) 완전히 제외하며 수작업 수식 입력을 피할 수 있습니다。 반복 사용 및 사용자 정의도 가능합니다。
단점:매크로 사용을 활성화해야 하며 VBA 에 어느 정도 익숙해야 합니다. UDF 로 변환하지 않는 한 워크시트 수식에는 적합하지 않습니다。
일반적인 문제 및 문제 해결: 숫자가 아닌 셀이나 오류 셀을 선택하면 매크로가 건너뛰거나 오류를 표시할 수 있습니다. 데이터 범위에는 0 과 양수 값만 포함되어 있는지 확인하세요. 0 이 아닌 데이터가 전혀 없을 경우 해당 내용이 안내됩니다。
팁: VBA 코드를 추가로 사용자 정의하여 출력 결과를 특정 워크시트 셀에 복사하거나 계산 함수를 변경하거나 여러 범위에 걸쳐 자동화할 수 있습니다。 매크로를 실행하거나 수정하기 전에는 항상 워크북을 저장하여 실수로 인한 데이터 손실을 방지하세요。
여러 열에서 백분위수 또는 사분위수 계산을 확장해야 하는 경우 열 또는 범위를 반복하는 루프를 통해 매크로를 수정하는 것을 고려하세요。
최고의 Office 생산성 도구
| 🤖 | KUTOOLS AI 도우미: 다음을 기반으로 데이터 분석 혁신하기:지능형 실행 | 코드 생성| 사용자 지정 수식 생성 | 데이터 분석 및 차트 생성| 향상된 함수 호출… |
| 인기 기능:찾기, 강조 표시 또는 중복 표시 | 빈 행 삭제 | 데이터 손실 없이 열 결합 또는 셀 제거 | 공식을 사용하지 않는 반올림... | |
| 슈퍼 LOOKUP:다중 조건 VLookup | 다중 값 VLookup | 여러 시트에서 VLookup | 퍼지 매치.... | |
| 고급 드롭다운 목록:드롭다운 목록 빠르게 생성 | 종속형 드롭다운 목록 | 다중 선택 드롭다운 목록.... | |
| 열 관리자:특정 수의 열 추가|열 이동|숨겨진 열의 표시 상태 전환|범위 및 열 비교... | |
| 주요 기능:그리드 포커스 | 디자인 보기 |향상된 수식 표시줄 | 워크북 및 시트 관리자 | 자원 라이브러리(자동 텍스트)| 날짜 선택기 | 워크시트 병합 | 암호화/셀 해독 | 목록으로 이메일 보내기 | 슈퍼 필터 | 특수 필터(굵은 글꼴이 있는 셀 필터링/기울임꼴/취소선。。。) 。。。 | |
| 상위 15 도구 모음:12 텍스트도구(텍스트 추가,특정 문자 삭제, ...)| 50+차트유형(간트 차트, ...)| 40+ 실용적인수식(생일을 기준으로 나이 계산, ...)| 19 삽입도구(QR 코드 삽입,경로에서 그림 삽입, ...)| 12 변환도구(단어로 변환하기,환율 변환, ...)| 7 병합 및 분할도구(고급 행 병합,셀 분할, ...)|그 외 더 많은 기능 |
Kutools for Excel 로 Excel 역량을 한 단계 업그레이드하고 전례 없는 효율성을 경험하세요。Kutools for Excel 는 생산성과 저장 시간을 향상시키는 300 개 이상의 고급 기능을 제공합니다。가장 필요한 기능을 지금 바로 확인하세요。。。
Office Tab 가 Office 에 탭 인터페이스를 제공하여 작업을 훨씬 쉽게 만들어 줍니다
- Word, Excel, PowerPoint 에서 탭 기반 편집 및 읽기 기능을 활성화합니다, Publisher, Access, Visio 및 Project 에서도 사용 가능합니다。
- 새 창이 아닌 동일한 창의 새 탭에서 여러 문서를 열고 생성할 수 있습니다。
- 50% 만큼 생산성을 높이고 매일 수백 번의 마우스 클릭을 줄여줍니다!
모든 Kutools 애드인。 하나의 설치 프로그램
Kutools for Office스위트 번들은 Excel, Word, Outlook 및 PowerPoint 용 애드인과 Office Tab Pro 를 포함하며, 다양한 Office 앱을 사용하는 팀에 이상적입니다。
- 올인원 스위트— Excel, Word, Outlook 및 PowerPoint 애드인 + Office Tab Pro
- 하나의 설치 프로그램, 하나의 라이선스— 몇 분 안에 설정 완료(MSI 지원)
- 함께 사용할수록 더 효과적입니다— Office 앱 전반에서 생산성 향상
- 30 일간 모든 기능 무료 체험— 등록이나 신용카드 필요 없음
- 최고의 가성비— 개별 애드인 구매 대비 절약