구글 스프레드시트에서 수식 적용하기
- 조건부 함수란 무엇인가?
- 비교 연산자란?
- IF와 IFS
아무도 알려주지 않아서 실무에서 혼자 맨땅에 헤딩하면서 습득한 내용을 다룹니다.
(최적화된 방법보다는 그냥 제가 할 줄 아는 방법을 다룬 것이라 이 블로그에 있는 방법이 가장 효율적인 방법은 아닐 수 있습니다!)
안녕하세요 데이빗입니다.
이번 포스팅에서는 지난 포스팅에 이어 계속해서 다양한 함수들을 이용하는 것에 대해서 알아보도록 하겠는데요, 특별히 조건부 함수들에 대해 알아보도록 하겠습니다.
조건부 함수란 무엇인가?
조건부 함수란 말 그대로 특정한 조건을 설정하고 해당 조건을 만족하는 경우 지정한 값을 출력해 주는 것을 의미합니다.
이 조건부 함수를 이용하기 위해서 먼저 비교 연산자에 대해 알아보도록 하겠습니다.
비교 연산자란?
구글 스프레드시트에서 사용되는 비교 연산자는 총 여섯 개가 있으며 각 연산자에 대한 설명은 아래와 같습니다.
비교연산자 | 뜻 | 설명 |
= | 같다 | 좌, 우의 값이 같을 때 참(True) 이 됩니다. |
<> | 같지 않다 | 좌, 우의 값이 다를 때 참(True) 이 됩니다. |
< | 작다 | 좌측의 값이 우측보다 작을 때 참(True) 이 됩니다. |
<= | 작거나 같다 | 좌측의 값이 우측보다 작거나 같을 때 참(True) 이 됩니다. |
> | 크다 | 좌측의 값이 우측보다 클 때 참(True) 이 됩니다. |
>= | 크거나 같다 | 좌측의 값이 우측보다 크거나 같을 때 참(True) 이 됩니다. |
조건부 함수에서의 핵심은 비교 연산자를 이용한 연산 결과가 참(True) 인지 거짓(False) 인지를 판별하는 것이며, 이 연산 결과가 조건이 되어 원하는 값을 출력해줄 수 있습니다.
IF
조건부 함수의 가장 기초가 되는 IF 함수에 대해 알아보도록 하겠습니다.
먼저 구글 스프레드시트에서 원하는 셀에 '=IF(' 까지 입력하면 아래 예시와 같은 도움말이 나타납니다.
(만약 도움말이 뜨지 않는다면, 선택한 셀(Cell)에 붙어 있는 '?'를 클릭하면 됩니다.)
위와 같이 모든 함수에 대하여 각각 도움말을 제공하고 있으며, 익숙해지기 전까지는 도움말을 참고하는 것이 큰 도움이 됩니다. 지난 포스팅에서 알아본 SUM, AVERAGE, MEDIAN 함수도 동일하게 도움말을 제공하고 있으나 워낙 직관적인 함수들이라 별도 언급은 하지 않았습니다.
다시 IF 함수로 돌아와서 위 예시를 보면, IF 함수를 이용하기 위해서 3개의 인수가 필요함을 알 수 있습니다.
가장 먼저 논리_표현식, 즉 비교 연산자를 이용하여 참(True) 혹은 거짓(False)이라는 결과를 줄 수 있는 수식을 입력해줘야 합니다. (물론 ISBLANK, ISNUMBER, ISTEXT 등의 논리 함수를 이용하기도 하는데, 이는 추후 포스팅에서 다루도록 하겠습니다.)
그다음으로 앞에 입력한 논리_표현식이 참(True) 일 때 출력해 줄 값과, 거짓(False) 일 때 출력해 줄 값을 입력해 줍니다.
위 예시는 IF 함수를 이용하여 가상의 인물 5명의 만 나이를 기준으로 성인/미성년자 여부를 판단하는 수식을 만들어 봤습니다.
C4부터 C8까지 각 인물의 만 나이를 입력했고, D4부터 D8까지 조건부 함수 IF를 이용한 수식을 입력했습니다.
각 수식의 내용은 E4부터 E8에서 확인할 수 있습니다.
위 예시의 수식에서 논리_표현식은 C열(Column)의 값이 18보다 큰지를 판단하는 것입니다. 그리고 논리_표현식이 참(True) 일 때 '성인'이라는 값을 출력하고, 거짓(False) 일 때 '미성년자'라는 값을 출력하도록 수식을 입력했습니다.
이때, 참(True), 거짓(False) 일 때 출력해주는 문자열의 시작과 끝에 큰따옴표 "를 두어서 이것이 문자열임을 정의해줬습니다. 만약 큰따옴표 "를 입력하지 않을 경우 구글 스프레드시트는 '성인'과 '미성년자'를 명령어로 인식할 것이고, 존재하지 않는 명령어이기 때문에 에러를 출력하게 되니 수식 내에서 문자열을 입력하고자 할 경우 꼭 잊지 말고 큰따옴표 "를 입력하고자 하는 문자열의 시작과 끝에 두어야 합니다.
C4와 C5에 입력된 데이터는 각각 12와 17로 18보다 작습니다. 즉 논리_표현식에 입력한 18보다 크다는 조건은 거짓(False)이 되고, 수식에서 거짓(False) 일 경우 출력하도록 설정한 '미성년자'를 출력하게 됩니다.
반면, C6부터 C8의 경우 모두 18보다 크며, 논리_표현식에 입력한 18보다 크다는 조건은 참(True)이 됩니다. 그렇기 때문에 참(True) 값인 '성인'을 최종적으로 출력할 수 있습니다.
IFS
만약 IF 함수의 사용법을 확실하게 익혔다면 IFS 함수는 훨씬 쉽게 이해할 수 있을 것입니다.
IF 함수가 논리_표현식의 결과에 따라 참(True) 혹은 거짓(False)에 지정한 값을 출력해주는 것이라면,
IFS 함수는 여러 개의 논리_표현식을 입력할 수 있고, 각 논리_표현식의 조건을 충족하는 값을 출력해줄 수 있습니다.
다수의 논리_표현식이 있을 때, 논리_표현식의 적용 및 값 출력은 순차적으로 이루어집니다.
마찬가지로 예시를 통해서 알아보도록 하겠습니다.
위 예시는 IF 함수의 예시와 같이 가상의 인물들의 만 나이를 기준으로 판단하는 수식을 만들어 봤습니다.
차이가 있다면 사람의 수가 더 늘어났고, 성인/미성년자 여부를 판단하는 것이 아닌 각 사람이 10대인지, 20대인지, 30대인지 등의 여부를 판단하는 것으로 변경했습니다.
추가로, 참조를 활용하는 것을 연습하기 위해 수식 내에 직접 숫자를 입력하는 것이 아니라 F4부터 G8까지 참조 영역을 만들어서 수식에서 해당 영역의 값을 참조하도록 했습니다.
D9를 예로 들어서 풀어서 설명해보면 아래와 같습니다.
C9(31)가 F4(20) 보다 작으면 G4(10대)를 출력하고, F5(30) 보다 작으면, G5(20대)를 출력하고, F6(40) 보다 작으면, G6(30대)를 출력하고, F7(50) 보다 작으면, G7(40대)를 출력하고, F8(60) 보다 작으면, G8(50대)를 출력하는 것입니다.
총 다섯 개의 논리_표현식이 입력되어 있으며 순차적으로 적용되기 때문에 앞에서부터 하나씩 보면 됩니다.
첫 번째 논리_표현식을 보면 31은 20보다 크기 때문에 C9<F4는 거짓(False)이 되고 다음 논리_표현식으로 넘어가게 됩니다.
두 번째 논리_표현식을 보면 31은 30보다 크기 때문에 C9<F5 또한 거짓(False)이 되고 다음 논리_표현식으로 넘어가게 됩니다.
세 번째 논리_표현식을 보면 31은 40보다 작기 때문에 C9<F6 은 참(True)이 되고 최종적으로 G6인 '30대'를 출력해주고 수식을 종료합니다.
네 번째, 다섯 번째 논리_표현식도 물론 참(True)이지만 위에서 언급했듯이 순차적으로 적용되기 때문에 참(True)이 발생한 시점에서 더 이상 진행되지 않습니다.
단, D14와 같이 수식이 다수의 논리_표현식에도 불구하고 참(True) 값을 줄 수 없는 조건이라면 에러 값인 #N/A를 출력하게 됩니다. 위와 같은 예시에서 이를 방지하려면 두 가지 방법이 있습니다.
첫 번째는 참조 영역을 넓혀서 70세 미만은 '60대', 80세 미만은 '70대'... 등으로 확장하는 방법이 있습니다. 다만 이 방법의 경우 초고령자를 대비해서 참조를 많이 만들어야 하는 단점이 있습니다.
두 번째는 특정 연령 이상을 하나의 묶음으로 간주하는 것입니다. 가령 61세 이상을 '60대 이상'으로 묶을 수 있겠죠.
위와 같은 방법을 차용한다면, F9에 '61', G9에 '60대 이상'을 입력하고 각 수식 말미에 이를 적용해줄 수 있겠습니다.
가령 D9를 예로 든다면 수식 가장 마지막에 D9>=F9, G9를 입력해준다면, '만 나이가 '61'보다 크거나 같으면 '60대 이상'을 출력해준다.'로 이해할 수 있겠죠.
이번 포스팅에서는 조건부 함수와 비교 연산자란 무엇인지, 그리고 대표적인 조건부 함수인 IF와 IFS에 대해 알아보았습니다.
다음 포스팅에서는 추가적인 조건부 함수에 대해서 알아보기 전에, 본격적으로 함수를 다룰 때 정말 정말 정말 중요한 상대 참조와 절대 참조에 대해 알아보도록 하겠습니다.
감사합니다.
'구글 스프레드시트' 카테고리의 다른 글
구글 스프레드시트 - 초급편 (5) (COUNTIF와 COUNTIFS 함수 이해하기) (0) | 2022.08.24 |
---|---|
구글 스프레드시트 - 초급편 (4) (상대 참조와 절대 참조 이해하기) (0) | 2022.08.06 |
구글 스프레드시트 - 초급편 (2) (SUM, AVERAGE, MEDIAN 함수 이해하기) (0) | 2022.07.30 |
구글 스프레드시트 - 초급편 (1) (수식 이용하기 기초, 셀 참조하기) (0) | 2022.07.20 |
구글 스프레드시트 - 입문편 (5) (셀 크기 변경하기, 데이터 다양하게 표시하기) (0) | 2022.07.15 |
댓글