엑셀 MODE 함수 완벽 정복: 최빈값 찾기부터 실무 데이터 분석 활용법까지 (MODE.SNGL, MODE.MULT)

 

안녕하세요, 엑셀로 똑똑하게 일하는 여러분! 😊 데이터 정리하다 보면 '가장 많이 팔린 상품' 이나 '가장 자주 문의가 들어온 유형' 처럼 가장 빈번하게 나타나는 값을 찾아야 할 때가 있죠? 수많은 데이터를 눈으로 일일이 세는 건 정말 비효율적인 일이에요. 이럴 때 필요한 함수가 바로 MODE 함수랍니다!

 

오늘 이 글 하나로 엑셀 최빈값 함수, MODE의 기본 개념부터 실무 활용 꿀팁까지 완벽하게 마스터하실 수 있을 거예요. 자, 그럼 시작해볼까요?

 

🚦 [고정핀] 엑셀 MODE 함수는 지정한 범위에서 가장 자주 나타나는 값(최빈값)을 찾아주는 데이터 분석의 필수 함수입니다.


📊 엑셀 MODE 함수, 도대체 뭔가요?

MODE 함수는 '최빈값(Mode)'을 구하는 통계 함수예요. 최빈값이란, 데이터 집합에서 가장 많이 관측되는 값을 의미하죠. 예를 들어 [1, 2, 2, 3, 4] 라는 데이터가 있다면, 2 가 두 번으로 가장 많이 나왔으니 최빈값은 '2' 가 됩니다.

엑셀에서는 버전이 업데이트되면서 MODE 함수가 세분화되었어요.

  • MODE.SNGL: 최빈값이 하나일 때 사용하는 가장 일반적인 함수예요. (Single)
  • MODE.MULT: 최빈값이 여러 개일 경우, 모든 최빈값을 찾아주는 함수예요. (Multiple)
  • MODE: 구버전 엑셀과의 호환성을 위해 남아있는 함수예요. 현재는 MODE.SNGL 사용을 권장합니다.

💡 오늘 강의에서는 가장 보편적으로 쓰이는 MODE.SNGL 과 심화 버전인 MODE.MULT 를 중심으로 설명해 드릴게요!


📝 MODE 함수 기본 구문과 인수

함수를 사용하려면 먼저 그 구조(구문)를 알아야겠죠? MODE 함수의 구문은 아주 간단해요.

=MODE.SNGL(number1, [number2], ...)
  • number1 (필수): 최빈값을 계산할 첫 번째 숫자, 셀, 또는 범위입니다.
  • [number2], ... (선택): 최-빈값을 계산할 추가적인 숫자, 셀, 또는 범위입니다. 최대 254개까지 지정할 수 있어요. 보통은 A1:A10 처럼 범위를 한 번에 지정해서 사용하죠.

📌 주의할 점!

  • MODE 함수는 숫자만 계산해요. 텍스트, 논리값(TRUE/FALSE), 빈 셀은 계산에서 제외됩니다.
  • 범위 안에 중복되는 값이 하나도 없다면 #N/A 오류가 발생해요.

💡 실전 예제로 배우는 MODE 함수 활용법

백 마디 설명보다 한 번의 실습이 더 효과적이죠! 업무에서 바로 써먹을 수 있는 4가지 예제를 준비했어요.

예제 1: 가장 기본적인 숫자 최빈값 찾기 (기본)

가장 기본적으로 학생들의 시험 점수에서 가장 많이 나온 점수를 찾아볼게요.

 

데이터 (CSV 타입) :

학생,수학 점수
A,85
B,90
C,75
D,90
E,80
F,95
G,90
H,85
I,70
J,88
K,90

위 데이터에서 가장 많이 나온 수학 점수(최빈값)를 찾아보겠습니다.

 

수식 :

=MODE.SNGL(B2:B12)

예제1: 엑셀 MODE 함수 숫자 최빈값 구하기 기본

결과 : 90

90점이 4번으로 가장 많이 나타났기 때문에 결과는 '90' 이 됩니다. 정말 간단하죠?

 

예제 2: 여러 팀의 실적에서 가장 빈번한 판매 건수 찾기 (중급)

이번에는 한 단계 더 나아가 보겠습니다. 'A팀'과 'B팀', 두 개 팀의 일일 판매 건수 실적을 동시에 살펴보고, 두 팀을 통틀어 가장 자주 등장하는 판매 건수를 찾아보겠습니다.

 

데이터 (CSV 타입) :

A팀과 B팀의 5일간 판매 건수 데이터가 아래와 같이 두 개의 열에 나뉘어 있습니다.

일자,A팀 판매건수,B팀 판매건수
07월 21일,15,12
07월 22일,12,18
07월 23일,10,15
07월 24일,11,10
07월 25일,15,11
07월 26일,13,12
07월 27일,12,16
07월 28일,10,15
07월 29일,14,10
07월 30일,12,13
07월 31일,11,15

두 팀의 실적을 합쳐서 최빈값을 D2 셀에 구해보겠습니다.

 

수식 :

=MODE.SNGL(B2:B12, C2:C12)

예제2: 엑셀 MODE 함수 다중 범위의 데이터로 최빈값 구하기

결과 : 12

 

설명:

이 예제 수식의 핵심은 B2:B12 (A팀 실적) 와 C2:C12 (B팀 실적) 라는 서로 다른 두 범위를 함수의 인수로 사용한 점입니다.

MODE.SNGL 함수는 두 범위에 있는 모든 숫자 (A팀의 11개, B팀의 11개, 총 22개) 를 하나의 큰 데이터 그룹으로 인식하여 최빈값을 계산합니다. A팀과 B팀의 실적을 모두 합쳐보면 '12' 라는 숫자가 총 5번 ( A팀 3번, B팀 2번) 으로 가장 많이 등장하므로, 결과로 '12' 를 반환합니다.

 

이렇게 서로 떨어진 여러 범위를 동시에 분석하는 방법을 익히면, 데이터를 별도로 합치는 재가공 시간 없이 더 빠르게 원하는 값을 찾을 수 있답니다. 🙇‍♀️

 

예제 3: 공동 1위가 있을 때! 모든 최빈값 찾기 (고급)

만약 선호도 조사에서 동점 1위가 여러 개 나왔다면 어떻게 할까요? MODE.MULT 함수가 해결해 줍니다. 만족도 점수에서 최빈값을 찾아보죠.

 

데이터 (CSV 타입) :

평가자,만족도 점수(1-5)
USER1,5
USER2,4
USER3,3
USER4,5
USER5,2
USER6,4
USER7,1
USER8,5
USER9,4
USER10,5
USER11,4

데이터를 보면 5점 과 4점 이 각각 4번씩, 공동 1위네요. MODE.MULT 를 사용해봅시다.

💡 MS 365 버전 사용자는 그냥 아래 수식을 입력하면 결과가 아래로 자동으로 펼쳐져요. (동적 배열 기능)

구버전 엑셀 사용자는 결과를 표시할 여러 셀(예: C2:C3)을 미리 선택하고, 수식을 입력한 뒤 Ctrl + Shift + Enter 를 눌러야 해요! (배열 수식)

 

수식 :

=MODE.MULT(B2:B12)

예제3: 엑셀 MODE.MULT 함수로 동일한 최빈값 구하기

결과:

5
4

 

결과가 5 와 4, 두 개가 모두 표시됩니다. 공동 최빈값을 모두 찾아낼 때 정말 유용하겠죠?

 

 

예제 4: 가장 빈번한 오류 코드의 '오류 메시지' 찾아오기 (실무 활용)

IT 시스템이나 스마트 공장에서는 수많은 오류가 코드로 기록됩니다. 어떤 오류가 가장 자주 발생하는지 파악하고, 그 오류가 무엇을 의미하는지 바로 찾아오는 예제를 만들어 보겠습니다. 여기서는 '오류 로그' '오류 코드 정의표' 두 개의 테이블을 사용합니다.

 

데이터 (CSV 타입) :

(1) 일일 오류 기록 (A2:B13)

가장 자주 발생한 오류 코드를 찾을 대상입니다.

발생 시간,오류 코드
09:15,101
10:02,305
10:25,202
11:10,404
11:45,202
13:20,101
14:05,500
14:30,202
15:01,305
15:55,404
16:21,202

(2) 오류 코드 정의표 (D2:E7)

오류 코드의 의미를 찾아올 기준 정보 테이블입니다.

코드,오류 메시지
101,연결 시간 초과
202,센서 값 인식 불가
305,권한 없음
404,데이터 없음
500,서버 내부 오류

 

수식 :

MODE 함수로 최빈 코드를 찾고, VLOOKUP 함수로 해당 코드의 메시지를 가져옵니다.

=VLOOKUP(MODE.SNGL(B3:B13), D3:E7, 2, FALSE)

예제4: 엑셀 MODE.SNGL 과 VLOOKUP 함수의 결합으로 오류코드 메시지 얻기

결과: 센서 값 인식 불가

 

설명:

이 수식의 동작 순서는 다음과 같습니다.

 

(1) MODE.SNGL(B3:B13): 먼저 '일일 오류 기록' 에서 가장 자주 발생한 오류 코드(최빈값)를 찾습니다. 위 데이터에서는 '202' 가 4번으로 가장 많이 발생했으므로, 202 를 결과로 반환합니다.

(2) VLOOKUP(202, D3:E7, 2, FALSE):

  • VLOOKUP 함수는 MODE 가 찾아낸 202 라는 값을 가지고,
  • '오류 코드 정의표'(D3:E7 범위) 에서 202 를 찾아,
  • 그 옆의 2번째 열에 있는 값, 즉 '센서 값 인식 불가' 라는 텍스트를 최종 결과로 보여줍니다.
  • FALSE 는 정확히 일치하는 값을 찾으라는 옵션입니다.

이렇게 MODEVLOOKUP 을 조합하면 '가장 빈번하게 발생하는 현상(최빈값)' '그 현상의 구체적인 내용(연결된 데이터)' 을 한 번에, 그리고 정확하게 찾아낼 수 있습니다.


🤔 MODE 함수, 이럴 땐 오류가 나요! (#N/A)

MODE 함수를 쓸 때 가장 흔하게 만나는 오류는 바로 #N/A 예요.

  • 오류 원인: 범위 내에 중복되는 숫자 값이 하나도 없을 때 발생합니다. 즉, 최빈값 자체가 존재하지 않는 상황이죠.
  • 해결 방법: IFERROR 함수를 함께 사용하면 깔끔하게 해결할 수 있어요. 오류가 발생했을 때 보여줄 메시지를 직접 지정하는 거죠.

예시:

=IFERROR(MODE.SNGL(B2:B12), "최빈값 없음")

이렇게 하면, 만약 최빈값이 없어서 #N/A 오류가 발생할 상황에 "최빈값 없음"이라는 텍스트가 대신 표시됩니다. 보고서가 훨씬 깔끔해지겠죠?


🔗 함께 쓰면 더 강력한 관련 함수들

  • COUNTIF : 특정 조건에 맞는 데이터의 개수를 세는 함수예요.
  • VLOOKUP / XLOOKUP : MODE 로 찾은 값과 연결된 다른 정보를 가져올 때 사용해요.
  • FREQUENCY : 특정 구간별로 데이터의 빈도수를 계산해주는, MODE 보다 훨씬 강력한 빈도 분석 함수랍니다.

오늘 배운 내용, 핵심만 다시 보기!

자, 오늘 정말 중요한 내용을 배웠어요! 머릿속에 쏙쏙 들어오도록 핵심만 요약해 드릴게요.

  1. MODE 함수는 데이터에서 가장 자주 나오는 값(최빈값)을 찾는다.
  2. 최빈값이 하나일 땐 MODE.SNGL, 여러 개일 땐 MODE.MULT를 사용한다.
  3. MODE 는 숫자만 계산 하며, 중복값이 없으면 #N/A 오류 가 발생한다.
  4. #N/A 오류 IFERROR 함수로 깔끔하게 처리할 수 있다.
  5. VLOOKUP 과 함께 쓰면, 최빈값에 해당하는 텍스트 정보를 가져오는 강력한 실무 활용이 가능하다!

데이터 분석의 첫걸음, 최빈값 구하기! 이제 자신 있으시죠? 오늘 배운 내용을 꼭 업무에 적용해보세요. 칼퇴가 한 걸음 더 가까워질 거예요!

 

궁금한 점은 언제든 댓글로 남겨주시고, 이 글이 도움이 되셨다면 공감과 공유 부탁드려요! 여러분의 응원이 더 좋은 콘텐츠를 만드는 힘이 됩니다. ❤️

 

 

작성자: 마늘빵


📱 모바일에서 빠르게 다시보기

✅ 엑셀 MODE 함수 한눈에 보기

  1. 뭐하는 함수? 가장 자주 나오는 값(최빈값) 찾기
  2. 기본 함수 (1개 찾기): =MODE.SNGL(범위)
  3. 여러 범위 동시 분석: =MODE.SNGL(범위1, 범위2)
  4. 여러 동일 최빈값 찾기: =MODE.MULT(범위)
  5. 오류 해결: =IFERROR(수식, "오류시 메시지")
  6. 실무 응용: =VLOOKUP(MODE.SNGL(최빈값계산범위), 참조표, 결과열번호, FALSE)