테이블 차트 및 피벗차트에서 합계 구하기
Qlik Sense 테이블차트의 단순한 행의 합과 계산된 표현식 합계 중에서 합계를 선택할 수 있습니다. Qlik Sense 피벗 테이블에는 이러한 기능이 없습니다. 피벗 테이블 합계는 항상 표현식 합계로 계산됩니다.
일반적으로 두 합계가 다를 경우 행 전체의 합이 유효할 가능성은 상당히 드물기 때문에 이는 좋은 방법입니다.
순수 합 외의 집계 유형에 행의 합을 사용할 때는 세심한 주의를 기울여야 합니다.
다음 섹션에서 경고가 발생했는데도 불구하고 행 전체의 합이 원하는 결과로 나타나는 예를 설명합니다.
Example:
기본 데이터가 다음과 같이 로드되었다.
이 중 구분별 최고 점수를 구하고자 한다. 그리고 각 점수를 합계를 구하고자 한다.
즉 온라인의 점수는 23을 구해야 한다.
기본적인 테이블 차트에서 Max 함수를 이용하면 최고점수는 구해진다. 그런데 합계도 Max 값이 나온다.
테이블 차트에서 측정값 점수의 속성 중간에 합계함수를 변경할 수 있다. 기본적으로 표현식에 Max가 사용되었으므로 합계도 Max로 되었는데, 이를 Sum 함수로 바꾸어 주면 된다.
최종 원하는 값들이 나왔다.
테이블차트를 행의 합계가 아니라 표현식 합게로 계산되는 피벗 테이블로 변환하면 문제가 발생합니다.
피벗차트에서는 테이블 차트와 같이 속성에서 지정할 수 없다.
피벗 차트에서 표현식으로 합계값 구하기
위 예제와 같이 Aggr 함수를 이용해야 한다.
원래 표현식을 Aggr 함수로 묶고 주변 차트의 차원도 Aggr 함수의 차원으로 사용합니다. 이제 이 번들을 Sum 집계에 대한 인수로 사용합니다. 그러면 피벗 테이블에 원하는 합계가 표시됩니다.
고급 집계 함수의 장점은 각 행에서 단일 값으로만 평가된다는 점입니다. 이는 차원이 원래의 각 데이터 행에 사용 가능한 값을 하나만 가지고 있기 때문입니다. 주변 차트의 내부 차원 및 표현식이 동일하므로 결과적으로 Sum과 고급 집계 함수를 묶지 않아도 각 값이 정확히 동일하게 됩니다.
그러나 전체 행에 대해서는 고급 집계 함수가 차원 필드의 각 값에 대해 하나씩, 총 세 개의 값을 반환합니다. 이러한 값은 Sum 집계를 사용하여 차례로 합산됩니다. 형식적으로는 표현식 합계이지만 결과는 행의 합과 같습니다.
실제로 위 내용에 대한 질문을 많이 받는 예제 입니다.
위 내용을 이해하기 위해서는 반드시 Aggr 함수에 대한 이해가 필요합니다.
다음 글에서 Aggr 함수를 살펴 보겠습니다.
클릭센스(Qlik Sense)에 관한 기술 자료는
https://qliksense.tistory.com/
클릭커
차체대 시각화 솔루션 Qlik Sense 란? Qlik Sense 에 대하여 살펴보자.
qliksense.tistory.com
'Qlik Sense 개발가이드' 카테고리의 다른 글
생키차트 (Sankey chart) 만들기 (0) | 2020.06.14 |
---|---|
클릭센스와 R 의 만남 (0) | 2020.06.08 |
클릭센스 개발가이드 - 함수(Function) 리스트 (0) | 2020.05.24 |
클릭센스 개발가이드 - 데이터 전처리 (Null 값 치환) (0) | 2020.05.12 |
클릭센스 개발가이드 - 가상차원을 이용한 원형차트 만들기 (0) | 2020.05.06 |