가이드
집계 함수

집계 함수

합계·평균·개수·최소·최대 등 값 필드의 집계 함수 설정 및 UI·API 변경 방법입니다.

집계 함수는 행·열로 묶인 그룹마다 측정값을 어떻게 집계할지 정합니다.

값 필드를 행·열에 배치하는 방법은 필드 구성을 참고하세요.

어디에 지정하나요

위치속성역할
Cube schema.measuresaggregate (필수)측정값의 기본 집계
Book fields.valuesaggregate피벗 값 필드의 집계. 생략 시 'sum'
// Cube — 측정값 기본 집계
measures: [
  { name: '판매수량', type: 'f64', aggregate: 'sum' },
  { name: '차량가격', type: 'f64', aggregate: 'avg' },
]
 
// Book — 값 필드에서 덮어쓰기
fields: {
  rows: ['국가'],
  values: [
    { name: '판매수량', aggregate: 'sum' },
    { name: '평균가격', measure: '차량가격', aggregate: 'avg' },
  ],
}

동일한 측정값에 여러 집계 함수를 적용하려면 값 필드의 namemeasure를 분리하여 설정합니다. 자세한 예는 필드 구성을 참고하세요.

집계 함수 목록

PivotAggregationType에 정의된 값입니다. UI 라벨은 화면에 표시되는 이름입니다.

UI 라벨
sum합계
avg평균
min최소값
max최대값
count개수
distinct고유수
product
stdev표본표준편차
stdevp표준편차
var표본분산
varp분산
first첫째값
last마지막값
p2525백분위수
p5050백분위수
p7575백분위수

큐브 측정값의 aggregate에도 위와 같은 값을 사용할 수 있습니다. (데이터와 큐브)

Book 설정에 넣을 때

createControl / book.load에 전달하는 설정 객체의 values[].aggregate 속성에는 다음 항목만 지정할 수 있습니다.

sum · avg · min · max · count · distinct

표준편차·백분위수 등은 화면 메뉴나 API를 통해 변경하여 사용하세요.

측정값 타입과 제약

measure type권장 집계
f64 · i32sum, avg, min, max 등 대부분
str · date보통 count · distinct (필요 시 first · last)

str / date 타입 측정값에 sum과 같이 적절하지 않은 집계 함수를 지정하면, 집계 시 자동으로 count가 적용됩니다.

화면에서 바꾸기

값 필드 헤더(또는 컬럼 바의 값 필드) 메뉴를 통해 원하는 집계 함수를 선택할 수 있습니다. 숫자 측정값(f64 · i32)일 때 메뉴가 활성화됩니다.

한편, 인스펙터에서 필드를 신규 배치할 경우 기본 집계 함수는 sum으로 지정됩니다.

API로 바꾸기

const book = control.book;
const table = control.table;
const field = table.fields.getValueField('판매수량');
 
field?.updateOption('aggregate', 'avg');
 
// Undo가 필요하면
book.updateProp(field, 'aggregate', 'sum');

API로 바꿀 수도 있습니다.

control.table.setAggregate('판매수량', 'avg');

React · Vue 래퍼에서도 동일하게 control을 통해 위 API를 호출합니다. 예는 React 개발 가이드 · Vue 개발 가이드를 참고하세요.

옵션 변경 규칙은 개발 가이드를, 속성 설명은 PivotValueFieldOptions.aggregate를 참고하세요.

See Also