본문 바로가기

Qlik Sense 개발가이드

클릭센스 개발가이드 - 데이터 전처리 (Null 값 치환)

Null Value 처리

난이도 : 고급

 

데이터 모델링 및 데이터 전처리에서 가장 중요한 것 중 하나가 Null 처리 입니다.

처리 방법은 여러 방법이 있습니다.  전체 필드의 Null 값을 치환하는 방법, 특정 필드만 치환하는 방법, If 문으로 처리, Match 문으로 처리, Mapping 으로 처리, 전체 변수로 처리하는 방법 등이 있습니다.

 

우선 Null 의 의미는 링크를 참조하세요

요약 아무것도 없다는 의미로프로그래밍 언어  컴퓨터 분야에서는 아무것도 보여주지 않는 경우를 나타내는 데 사용된다.

nil이라고도 하며 라틴어로 무()를 의미하는 nullus에서 유래되었다. 영어에서는 컴퓨터 언어에 한정되지 않고 종종 0(zero)이나 empty와 대체되어 사용된다. 예를 들어 null matrix zero matrix(영행렬), null set empty set(공집합)를 나타낸다.

프로그래밍 언어에 있어서의 널은 언어의 종류에 따라 아무 값도 갖지 않는 경우를 나타낸다널 문자(null character) 0 값을 가지는 아스키(ASCII) 문자로, 주로 종결자(terminator)나 구분자 등으로 사용된다. SQL에서의 널은 어떤 값도 가지지 않음을 나타내기 위한 특별한 키워드 혹은 특별 표식으로 쓰인다널 포인터(null pointer) 경우 NULL, nil, None 등으로 쓰여지는데, 이는 아무것도 가리키지 않는 특별한 포인터로즉 포인터나 참조가 무효임을 나타낸다널 문자열(null string)의 경우 길이가 0인 특별한 문자열을 말한다리스프(LISP) 언어의 경우는 진리값 중 거짓을 나타낼 때나 빈 목록을 나타내기도 하며, 파이썬의 경우 널은 객체(object)를 나타낸다이외에 널 장치(nulldevice) 존재하지 않는 가상의 장치를 나타내며불필요한 데이터 스트림을 널 장치로 출력하게 되면 실제 출력되지 않고 폐기된다.

[네이버 지식백과] [Null] (두산백과)

 

Qlik 에서 Null 처리 방법

위 레코드에서 임영웅의 회사명, Gender Null 값으로 되어 있습니다.

다음 과정을 수행하겠습니다. 

If 문을 이용

스크립트문 

 

위 스크립트가 수행한 결과입니다.  회사명의 Null 값이 치환되었고, Gender 필드도 치환되었습니다.

 

Match 문을 이용

 

결과는 동일합니다.

 

Mapping 문을 이용하는 방법

Map Using 구문을 이용하는 방법을 소개합니다.

Mapping 테이블을 생성 후, Map Using 구문을 사용합니다.

 

 

Map Using 구문은 로드되어 있는 테이블을 변경하는 것은 아닙니다.  미리 선언하는 역할을 하는 것이고, 선언 후 다음에 다시 Load 문을 수행하면 변경이 됩니다.  즉 순서가 아주 중요합니다.

물론 위 문장 대신에 Load 문에서 ApplyMap 함수를 사용해도 됩니다.

그러나 전체 스크립트를 보면 Load * 기능을 사용할 수 없겠지요.

Qlik 을 몇 년 동안 사용하셨던 사용자들도 ApplyMap 함수는 사용하는데, Map Using 문은 활용도가 낮았습니다

 

 

위 스크립트에서 Gender 필드는 2 번의 Map Using 문을 사용합니다.

즉 첫 번째는 Gender에 대한 값을 성별로 치환하고, 두 번째 Map 문에서 Null 값을 치환하게 됩니다. 즉 동일 필드에 중복 사용이 가능합니다.

 

NullAsValue 를 이용한 치환

Load 문 앞에 NullAsValue 문을 사용한다.  

 

SET 표현식 다음에 로드하는 모든 필드에 대해 수행되므로 주의하십시오.

물론 다음의 과정에서 Gender 변환은 이뤄지지 않겠지요.

 

 

 

클릭센스 모델링에 관한 전반적인 글은 다음 글을 참조하세요. 

https://qliksense.tistory.com/23

 

클릭센스 데이터모델링 (Qlik Sense Data Modeling)

차세대 시각화 솔루션인 클릭센스(Qlik Sense)를 이용하기 위해서는 필수적인 요소가 데이터 모델링입니다. 데이터 모델링을 잘 하기 위해서는 반드시 요건정의가 전제 되어야 합니다. 잘 정리된 요건정의에 의하..

qliksense.tistory.com

 

클릭센스(Qlik Sense)에 관한 기술 자료는

https://qliksense.tistory.com/

 

클릭커

차체대 시각화 솔루션 Qlik Sense 란? Qlik Sense 에 대하여 살펴보자.

qliksense.tistory.com

 

 

끝.