class - 스크립트 및 차트 함수
class 함수는 첫 번째 파라메타를 클래스 간격에 할당합니다. 결과는 숫자 값으로 하위 경계, 텍스트 값으로 a<=x<b이 포함된 이중 값이며, 여기서 a와 b는 bin의 상한과 하한 값입니다.
구문:
class(expression, interval [ , label [ , offset ]])
반환 데이터 유형: 이중
인수
interval
|
bin 너비를 지정하는 숫자입니다. |
label
|
결과 텍스트에서 'x'를 대체할 수 있는 임의의 문자열입니다. |
offset
|
기본 분류 시작점에서의 오프셋으로 사용할 수 있는 숫자입니다. 기본 시작점은 일반적으로 0입니다. |
예: 차트 표현식class( var,10
), var = 23 | 20<=x<30를 반환합니다. |
class( var,5,'value'
), var = 23 | 20<= value <25를 반환합니다. |
class(
var,10,'x',5
), var = 23 | 15<=x<25를 반환합니다. |
이 항목의 일부 예에서는 인라인 로드를 사용합니다. 인라인 로드를 사용하여 데이터 로드
예 - class 기본 사항
개요
이름과 나이가 포함된 데이터 테이블이 로드됩니다. 사람들을 연령대(10년 간격)로 분류하고 각 그룹에 속한 사람의 수를 계산하려고 합니다.
데이터 로드 편집기를 열고 새 섹션에 아래 로드 스크립트를 추가합니다.
로드 스크립트에는 다음이 포함됩니다.
로드 스크립트
Example:
LOAD * INLINE [
Age, Name
25, John
42, Karen
53, Yoshi
43, Bob
27, Charles
];
결과
데이터를 로드하고 시트를 엽니다. 두 개의 새 테이블을 만듭니다.
첫 번째 테이블에서 다음을 수행합니다.
다음 차원을 추가합니다.
다음 측정값을 만듭니다.
- 두 번째 테이블에서 다음을 수행합니다.
이 표현식을 차원으로 추가합니다.
다음 측정값을 만듭니다.
첫 번째 테이블은 Name과 Age에 대한 원시 데이터와 이들이 어느 연령대에 속하는지 보여 줍니다.
결과 테이블 1Name | Age | class(Age, 10, 'age') |
---|
Bob | 43 | 40 <= age < 50 |
Charles | 27 | 20 <= age < 30 |
John | 25 | 20 <= age < 30 |
Karen | 42 | 40 <= age < 50 |
Yoshi | 53 | 50 <= age < 60 |
두 번째 테이블에서는 데이터가 어떻게 분류되고 요약되었는지 확인할 수 있습니다. class 함수의 결과로 첫 번째 측정값에서 3개의 연령대가 만들어졌습니다. 두 번째 측정값 방법은 각 연령대의 사람 수를 계산하는 것입니다.
결과 테이블 2class(Age, 10, 'age') | Count(Age) |
Totals | 5 |
---|
20 <= age < 30 | 2 |
40 <= age < 50 | 2 |
50 <= age < 60 | 1 |
개요
이름과 나이가 포함된 데이터 테이블이 로드됩니다. 10년 간격으로 연령대에 따라 각 사람을 분류하는 필드를 추가하려고 합니다. 원본 소스 테이블은 다음과 같습니다.
원본 소스 테이블Name | Age |
---|
John | 25 |
Karen | 42 |
Yoshi | 53 |
데이터 로드 편집기를 열고 새 섹션에 아래 로드 스크립트를 추가합니다.
로드 스크립트에는 다음이 포함됩니다.
로드 스크립트
LOAD *,
class(Age, 10, 'age') As Agegroup;
LOAD * INLINE
[ Age, Name
25, John
42, Karen
53, Yoshi];
결과
데이터를 로드하고 시트를 엽니다. 새 테이블을 만들고 다음 필드를 차원으로 추가합니다.
결과 테이블Name | Age | Agegroup |
---|
John | 25 | 20 <= age < 30 |
Karen | 42 | 40 <= age < 50 |
Yoshi | 53 | 50 <= age < 60 |
새 필드 Agegroup은 각 사람을 연령대별로 분류합니다.
예 - class 시나리오
개요
고객 데이터가 포함된 데이터 테이블이 로드됩니다. 고객을 수명 가치 포인트 획득 수에 따라 분류하고 각 범주별 고객 수를 계산하려고 합니다.
데이터 로드 편집기를 열고 새 섹션에 아래 로드 스크립트를 추가합니다.
로드 스크립트에는 다음이 포함됩니다.
로드 스크립트
Example:
Load * Inline [
CustomerID, CustomerName, LifetimeValue
1, John Doe, 12500
2, Jane Smith, 36000
3, Sam Brown, 15000
4, Lisa White, 50000
5, Tom Harris, 22000
];
결과
데이터를 로드하고 시트를 엽니다. 두 개의 새 테이블을 만듭니다.
첫 번째 테이블에서 다음을 수행합니다.
다음 차원을 추가합니다.
CustomerID
CustomerName
LifetimeValue
- 다음 계산된 차원을 만듭니다.
- =Class(LifetimeValue, 10000, 'Lifetime Value Group'): LifetimeValue 필드를 기준으로 데이터를 분류합니다.
- 두 번째 테이블에서 다음을 수행합니다.
이 표현식을 차원으로 추가합니다.
다음 측정값을 만듭니다.
첫 번째 테이블은 입력된 원시 데이터와 클래스 함수를 사용한 결과를 보여 줍니다.
결과 테이블 1CustomerID | CustomerName | LifetimeValue | Class(LifetimeValue, 10000, 'Lifetime Value Group') |
---|
1 | John Doe | 12500 | 10000 <= Lifetime Value Group < 20000 |
2 | Jane Smith | 36000 | 30000 <= Lifetime Value Group < 40000 |
3 | Sam Brown | 15000 | 10000 <= Lifetime Value Group < 20000 |
4 | Lisa White | 50000 | 50000 <= Lifetime Value Group < 60000 |
5 | Tom Harris | 22000 | 20000 <= Lifetime Value Group < 30000 |
두 번째 테이블은 데이터를 분류하고 요약하는 방법을 보여 줍니다. class 함수를 사용하여 데이터를 4개 그룹으로 분류한 다음, 각 그룹의 고객 수를 보여 주기 위해 계산합니다.
결과 테이블 2Class(LifetimeValue, 10000, 'Lifetime Value Group') | Count(CustomerID) |
Totals | 5 |
---|
10000 <= Lifetime Value Group < 20000 | 2 |
20000 <= Lifetime Value Group < 30000 | 1 |
30000 <= Lifetime Value Group < 40000 | 1 |
50000 <= Lifetime Value Group < 60000 | 1 |