공부기록

완전 노베이스 쌩초보 태블로 강의 기록 (14) 본문

시각화/인프런

완전 노베이스 쌩초보 태블로 강의 기록 (14)

맘모스빵러버 2021. 4. 4. 22:55

이번 게시물은 드디어 마지막 강의인 16강 IF 함수에 대한 정리입니다

 

강의 출처: www.inflearn.com/course/%ED%83%9C%EB%B8%94%EB%A1%9C%EA%B0%95%EC%A2%8C-1/lecture/27497?tab=note

 

웰컴 투 태블로 월드 - 인프런 | 학습 페이지

지식을 나누면 반드시 나에게 돌아옵니다. 인프런을 통해 나의 지식에 가치를 부여하세요....

www.inflearn.com

먼저 계산된 필드를 하나 생성한다. 그리고

IF SUM([Sales])>= 100000 THEN 'High' ELSE 'Low' END

해당 수식을 입력한다. 이 수식은 Sales의 합계가 100,000 이상이면 'High'이고 아니면 'Low'이다 라는 의미이다. 즉 

IF -조건- 조건이 맞을시 표현 -조건과 맞지 않을시 표현  순으로 작성하면 된다. 

이를 적용해 보면 

100,000을 기준으로 Low와 High로 구분된걸 볼 수 있다.

 

 

 

 

IF SUM([Sales])>= 100000 THEN 'High' END

그렇다면, 위와 같은 if문은 어떨까 100,000이면 'High'로 표현하라 라고 명령하고 end로 명령문을 끝낸다. 

그렇게 if문을 준다면 차트는 

 

 

그렇게 되면 조건을 만족하는 즉 sales가 100000이상인 데이터는 high로 만족하지 못하는 데이터는 Null로 표현되는 것을 확인할 수 있다.

IIF(SUM([Sales])>=100000, 'High','Low')

iif 문법을 사용하면 좀더 간단하게 명령문을 작성할 수 있다. if 문을 작성하면 if 조건 then 표현 else 표현 식으로 나타나야 하는데 iif는 그냥 콤마로 구분을하고 작성하면 된다.  위 iif 문을 해석하면 100,000이상이면 'High'아니면 'Low'이라는 뜻이다. 

 

SUM([Sales])>=100000

위에 수식은 보다 간단하게 나타낼 수 있다. 얼핏보면 어? 참일때 뭐라고 나와야하는지 지정하지 않았는데 왜 오류가 안나오지라고 생각할 수 있지만 적용한 결과를 먼저 보자.

보면 조건에 해당하는 것은 참으로 해당하지 않는 것은 거짓으로 표현된 것을 볼 수있다. 또한 여태까지는 문자열로 저장된 필드가 표현되었지만 이거는 tf 불린형으로 나온것을 알 수있다. 강사님께서는 이 방법을 가장 추천한다고 하셨다. 그 이유는 T/F 필드가 문자열보다 태블로 성능 측면에서 빠르게 작동할 수 있고 불필요한 단어들을 기입할 필요가 없기 때문이다. 

 

IF SUM([Sales])>=100000 THEN 'High'
ELSEIF SUM([Sales])>=50000 THEN 'Middle'
ELSE 'Low' END

ELSEIF문은 3개이상으로 분류할때 사용한다. 해당 ELSEIF문을 해석해보면 100,000이상이면 'High'이고 50,000 이상이면 'Middle'이고 그 어느것도 아니면 'Low'라고 표현하라 라는 의미이다. 그럼 적용을 해보면

이렇게 3가지 유형으로 구분된것을 볼 수 있다.

 

 

다음은 집합을 이용한 if 문을 알아보자. if 다음에 집합을 가지고 오게 되면은 특별한 말을 쓰지 않고도 then을 쓸수 있다. 이말은 즉 top customers by profit이라는 집합에 포함되는 고객들만 가져오고 그렇지 않은 고객은 ETC로 표현하라는 의미이다.  적용을 해보면 

이렇게 결과가 표현되는 것을 알 수 있다. 

 

이렇게 인프런 - 웰컴 투 태블로 월드 강의에 정리를 마무리 하겠습니다^^