Contour 보드 참조
보드는 경로 위에서 아래로 적용합니다. 표시만 바꾸는 설정, 다음 보드에 전달할 데이터를 바꾸는 설정과 집계 결과로 전환하는 동작을 구분합니다.
| 보드 | 주요 작업 |
|---|---|
| Summary | 현재 단계의 행 및 열 개수 |
| Filter | 여러 조건의 행 필터 |
| Expression | 식으로 열 계산, 필터와 집계 |
| Table | 표 미리보기와 표시 형식 |
| Histogram | 범주별 집계와 선택 |
| Distribution | 숫자 구간별 분포 |
| Time series | 시간 구간별 집계 |
| Edit columns | 열 결합, 복제, 제거, 이름 변경과 분할 |
| Transform data | 난독화, 값 교체와 날짜 파싱 |
| Chart | 여러 유형과 오버레이를 가진 차트 |
| Grid | 두 열 조합별 집계 |
| Heatmap | 지리 좌표의 집계 표시와 반경 선택 |
| Pivot table | 여러 차원의 집계 표 |
| Column editor | 열 계산, 제거와 중복 제거 |
| Multi-column editor | 여러 열의 이름, 순서와 유지 여부 |
| Enrich | 현재 데이터에 다른 데이터의 열 추가 |
| Link | 일치하는 상대 데이터셋의 열 반환 |
| Set math | 다른 데이터셋을 기준으로 행 추가, 유지 또는 제거 |
| Join | 조인과 관리자 추천 구성 |
| Export | CSV 또는 XLS 다운로드 |
| Reorder columns | 열 순서 변경 |
| Macro | 저장된 변환 템플릿 적용 |
| Sort | 분석 데이터 정렬 |
| Calculation | 여러 집계 지표를 카드나 목록으로 표시 |
| Unpivot | 열을 이름 및 값 행으로 변환 |
레이어를 사용하는 지도는 별도의 Map 보드에서 설명합니다.
공통 집계 지표
보드별로 제공하는 집계 옵션을 선택합니다. 아래 지표는 Histogram, Distribution, Grid, Heatmap, Pivot Table 등에서 사용합니다.
| 지표 | 의미와 열 선택 |
|---|---|
| Count | 레코드 수. 별도 집계 열을 고르지 않음 |
| Unique Count | 선택한 열의 고유값 수. 임의 자료형의 열 선택 가능 |
| Min, Max | 수치 열의 최솟값과 최댓값 |
| Sum, Mean | 수치 열의 합계와 평균 |
| Approx. Median | 수치 열의 근사 중앙값 |
| Standard Deviation, Variance | 수치 열의 표준편차와 분산 |
Count 외에는 집계할 열을 지정합니다. Approx. Median은 percentile_approx에 비율 0.5와 기본 accuracy를 전달한 근삿값입니다.
Summary
현재 경로 위치의 행과 열 개수를 표시합니다. 필터 전에는 시작 데이터의 개수, 필터 후에는 남은 데이터의 개수입니다. 표 미리보기의 표시 행 수와 전체 데이터의 행 수를 구분할 때 사용합니다.
Filter
여러 열의 조건을 한 보드에 모아 필터링합니다. 목록을 지정하는 방식은 SQL의 IN 조건과 비슷합니다. 수천 항목의 목록도 처리할 수 있지만 지나치게 큰 목록은 브라우저를 느리게 하거나 멈추게 할 수 있습니다. 큰 목록은 별도 데이터셋으로 가져와 Link 또는 Set math 방식으로 비교합니다.
Add filter에서 열과 비교 연산을 고릅니다. 자료형에 맞는 분류를 자동 선택하며, 여러 조건은 모두 일치 또는 하나 이상 일치로 결합합니다. 휴지통으로 조건을 제거하고 Save로 적용합니다.
| 문자열 연산 | 예시와 동작 |
|---|---|
| contains | hello가 포함된 hihellohi도 일치 |
| contains (with wildcards) | h?l*o는 hi hello hi 또는 hi halqqqqqo hi에 일치 |
| is | hello는 hello와 일치하며 hi hello hi와는 불일치 |
| is (with wildcards) | h?l*o는 hello 또는 halqqqqqo에 일치 |
| matches | Java Pattern 정규식으로 비교. 따옴표나 문자열 표시 없이 패턴 자체를 입력 |
contains도 와일드카드를 해석할 수 있습니다. contains와 contains (with wildcards)의 이스케이프 차이는 문자열 필터를 따릅니다. 패턴이 복잡하면 matches를 사용하는 편이 분명합니다.
Expression
열 추가, 열 교체, Boolean 필터와 집계식을 작성합니다. ?로 문법을 확인하고 자동완성 목록에서 함수를 선택하거나 Enter로 삽입합니다. 열 이름은 대소문자를 구분하며 큰따옴표로 감쌀 수 있습니다.
Expression 보드 사용법과 문법 및 함수에 저장 표현식과 각 모드의 제약이 나와 있습니다.
Table
Table은 현재 데이터의 처음 limit개 행을 보여 주며 기본값은 1,000입니다. 브라우저 성능을 위한 미리보기 한도이고 일반적으로 사용자가 바꿀 수 없습니다.
열을 끌어 순서를 바꾸거나 열 메뉴에서 표시 방식을 고릅니다. 이런 표시 설정은 기반 데이터를 바꾸지 않습니다. Table에서 일부 열만 보더라도 이후 데이터에는 다른 열이 남아 있습니다.
Shift를 누른 채 여러 열을 선택해 함께 옮길 수 있습니다. Configure 패널에서도 여러 열을 조정합니다.
열 메뉴에서 조건부 서식을 추가하면 규칙에 맞는 셀의 글자색과 배경색을 바꿉니다. Date 열에는 조건부 서식 규칙을 적용할 수 없습니다.
Table 보드는 원하는 경로 위치의 미리보기이고, Table 패널은 보드를 적용하면서 변하는 표를 중심으로 보는 화면입니다. 오른쪽 위의 Table 또는 Show table로 패널을 열고 같은 버튼이나 Hide table로 돌아갑니다. Table 패널은 조건부 서식을 지원하지 않습니다.
Histogram
열의 고유값별로 집계하여 막대로 표시합니다. 다음은 택시 출발 구역별 평균 이동 시간의 예시입니다.
처음에는 상위 막대 열 개를 표시합니다. + Show More로 늘릴 수 있으며 한 번에 최대 50개 값을 표시합니다. 더 많은 값은 드롭다운으로 범위를 바꾸어 봅니다.
- Y-Axis에서 범주를 만들 열을 선택합니다.
- X-Axis에서 집계 지표를 고릅니다. Count 외에는 집계할 열도 지정합니다.
- 사용할 수 있는 지표는 Count, Unique Count, Min, Max, Sum, Mean, Approx. Median, Standard Deviation, Variance입니다.
가상 taxi_trips 테이블의 start_neighborhood와 trip_time_in_secs를 사용하는 SQL 대응은 다음과 같습니다.
SELECT start_neighborhood, mean(trip_time_in_secs) AS mean_trip_time
FROM taxi_trips
GROUP BY start_neighborhood
Switch to Pivoted Data를 선택하면 다음 보드의 입력을 집계 결과로 바꿉니다. 결과에는 Y축 그룹 열과 집계 열이 들어갑니다.
기본 정렬은 집계값 내림차순입니다. 큰 Histogram은 집계값 상위 1,000개를 대상으로 정렬합니다. 드롭다운으로 Y축 값 기준 또는 정렬 방향을 바꿀 수 있습니다.
Bar 선택은 범주 값을 하나 이상 고릅니다.
Range 선택은 집계값 범위를 기준으로 범주를 고릅니다.
Keep은 선택한 값을 남기고 Remove는 제외합니다.
Distribution
숫자 열을 값 구간으로 나누고 구간별 집계를 표시합니다. 범주별 고유값을 사용하는 Histogram과 달리 같은 폭의 구간을 사용합니다.
X-Axis에서 숫자 열을 선택하고 10개, 100개 또는 1,000개처럼 구간 수를 정합니다. 값의 최솟값과 최댓값을 기준으로 같은 폭의 구간을 구성하므로 각 구간의 행 수가 같은 것은 아닙니다. SQL로 표현하면 구간을 식별하는 값을 계산한 뒤 그 값으로 GROUP BY하여 집계하는 방식입니다.
Y-Axis에는 Count, Unique Count, Min, Max, Sum, Mean, Approx. Median, Standard Deviation, Variance를 사용할 수 있습니다. Count 외에는 집계 열을 고릅니다. X축과 Y축 모두 linear 또는 logarithmic 척도를 설정할 수 있습니다.
범위를 끌어 선택한 뒤 보드 아래에서 경계를 더 정확히 조정합니다.
Keep 또는 Remove로 적용하고 Clear의 x 버튼으로 선택을 지웁니다.
Time series
시간 구간별로 집계합니다. 다음 예시는 출생연도별 인원수입니다.
Series 열을 지정하면 고유값별로 선을 나눕니다. 예제 데이터의 F와 M 값은 각각 별도 선으로 표시됩니다.
집계는 전체 데이터셋을 대상으로 하며 화면에는 처음 1,000개 값을 표시합니다.
- X-Axis에서 DateTime 열과 Second, Minute, Hour, Day, Week, Month, Year 중 단위를 선택합니다.
- 집계는 Count, Unique Count, Min, Max, Sum, Mean, Standard Deviation, Variance를 선택합니다. Count 외에는 집계 열이 필요합니다.
- Series에서 선을 나눌 열을 고릅니다.
시간 범위 선택 아이콘을 누르고 범위를 끌어 선택합니다. 아래 편집 영역에서 경계를 조정하고 Keep 또는 Remove를 적용합니다.
선택 해제 아이콘으로 지웁니다.
Edit columns
다음 보드로 실제 열을 바꿉니다.
| 동작 | 역할 |
|---|---|
| Combine | 두 개 이상 열 결합 |
| Duplicate | 열 복제. 원래 열을 유지한 채 다른 계산 시험 가능 |
| Remove | 열 제거 |
| Rename | 열 이름 변경 |
| Split | 구분 문자로 열 분리 |
Transform data
Obfuscate
Hash는 각 값을 SHA-1 해시 표현으로 바꿉니다. 해시는 복호화 키로 되돌리는 암호문이 아니며, 해시만으로 익명성이나 안전한 데이터 보호가 보장되지는 않습니다. SHA-1에는 알려진 충돌 취약성도 있으므로 이 기능을 규정 준수 목적의 보호 수단으로 사용하지 않습니다. NIST의 SHA-1 안내에서도 더 강한 알고리즘으로 이전하도록 권고합니다.
Mask는 일부 문자를 가립니다. 예를 들어 전화번호의 마지막 두 자리만 남기도록 구성할 수 있습니다.
k-Anonymize는 외부 데이터와 결합해 개인을 식별할 수 있는 준식별자 조합을 최소 k개 행이 공유하도록 값을 억제하는 기능입니다. 직접 식별 정보가 없어도 재식별 위험을 줄이는 데 사용합니다. k는 분석 맥락과 조직 정책으로 정하며, 1보다 크고 전체 행 수보다 작아야 합니다. 정책 사례로는 NCES 통계 공개 기준과 HHS 셀 억제 정책을 참고할 수 있습니다.
설정 순서는 다음과 같습니다.
- Columns에 준식별자 열을 지정합니다.
- k-value 목표를 입력합니다.
- 열별 억제 전략과 적용 순서를 정합니다.
- 억제 후에도 k를 충족하지 못한 행의 처리 방식을 선택합니다.
| 전략 | 동작 |
|---|---|
| Bucket | 정숫값을 구간으로 교체. 숫자형 열에서만 선택 가능 |
| Mask | 마지막 n개 문자를 *로 교체 |
| Replace | 전체 값을 문자열로 교체. 기본 제안값은 ***이며 직접 바꿀 수 있음 |
Suppress column을 켠 열은 k 충족 여부와 관계없이 모든 값에 전략을 적용합니다. 나이 구간을 모든 행에 같은 기준으로 적용할 때 사용할 수 있습니다.
| 억제 후 미달 행 처리 | 결과 |
|---|---|
| Keep | 행을 보존하지만 결과가 k-anonymized 상태는 아님. 검토용으로 사용 가능 |
| Drop | 미달 행 제거. 전후 행 수를 비교하여 제거 규모 확인 |
| Redact | 미달 행의 값을 ***로 가려 행 수 유지 |
Find and replace
문자열을 찾고 바꾸거나 빈 셀 및 null 셀을 찾습니다. String과 Numeric 유형을 지원합니다.
Parse dates
문자열을 지정한 형식과 기호별로 대조하여 날짜로 해석합니다.
| 기호 | 의미 | 예 |
|---|---|---|
| y | 연도 | 1996, 96 |
| M | 월 | July, Jul, 07 |
| d | 일 | 10 |
| a | 오전/오후 | AM, PM |
| h | 오전/오후 기준 시, 1부터 12 | 12 |
| H | 하루 기준 시, 0부터 23 | 13 |
| m | 분 | 30 |
| s | 초 | 55 |
| S | 초의 소수 부분 | 978 |
| z | 일반 시간대 | Pacific Standard Time, PST, GMT-08:00 |
| Z | 시간대 오프셋 | -0800, -08:00 |
표에 없는 문자는 지원하지 않습니다. 지원하지 않는 문자도 패턴으로 해석하여 예상하지 못한 결과가 생길 수 있으므로 다른 형식이 필요하면 Expression 보드를 사용합니다.
입력에 있는 문자를 그대로 맞추려면 작은따옴표로 감쌉니다. 문자가 아닌 기호와 따옴표 안의 내용은 입력 문자열과 정확히 일치해야 합니다. 예를 들어 yyyyMMdd는 19580706을 1958-07-06 날짜로 읽습니다.
Chart
Main Chart 레이어의 유형과 축을 선택합니다.
| 유형 | 화면 |
|---|---|
| Bar | 세로 막대 |
| Horizontal Bar | 가로 막대 |
| Line | 선 |
| Scatter | 산점도 |
| Heat Grid | 값에 따라 색칠한 격자 |
| Pie | 원형 비율 |
Heat Grid와 Pie를 제외한 유형은 Segment by로 계열을 나눌 수 있습니다.
정렬과 표시
Options에서 주 레이어의 X값, Y값 또는 사용자 지정 열로 정렬합니다. 사용자 지정 열은 차트에 그리지 않은 열이어도 됩니다. 오름차순과 내림차순을 선택할 수 있지만 오버레이 값으로 주 차트 순서를 정할 수는 없습니다.
Format에서 축 제목과 형식, 범례 위치, 계열 순서와 색을 바꿉니다.
오버레이
- Add Overlay로 다른 그래프를 겹칩니다. 현재 경로 또는 다른 데이터셋을 선택할 수 있습니다. 다른 데이터셋을 그렸다는 이유로 현재 작업 데이터와 조인되는 것은 아닙니다.
데이터 경로에는 주 레이어만 들어갑니다. 오버레이의 선택이나 조작은 하위 경로 데이터를 필터링하지 않습니다. 값의 범위나 단위가 다르면 별도 Y축을 사용할 수 있습니다.
버킷
Group by와 Segment by의 숫자, 날짜 및 시간 열은 버킷으로 묶을 수 있습니다.
| 숫자 옵션 | 동작 |
|---|---|
| Exact value | 정확한 값을 사용 |
| Optimal | 기반 데이터 범위 안의 점 수의 제곱근을 기준으로 버킷 수 선택. 값 범위는 최댓값과 최솟값의 차이 |
| Most granular | Result limit 안에서 가능한 가장 세밀한 구간. 가능하면 정확한 값 사용 |
| Custom | 버킷 수 직접 지정. Result limit보다 크게 지정할 수 없음 |
| 날짜 및 시간 옵션 | 동작 |
|---|---|
| Exact time | 정확한 시각 사용 |
| Rounding | Second, Minute, Hour, Day, Week, Month, Year 단위로 묶음. 예를 들어 2018-06-15를 Year로 묶으면 2018 그룹 |
| Ordinals | 달력상 위치별 그룹. Day of week는 요일별 일곱 그룹 |
Result limit의 기본값은 1,000점이며 Palantir 관리자가 설정합니다. 숫자, 날짜와 시간 열의 버킷 선택이 한도를 넘으면 데이터를 버리는 대신 한도에 들어오는 가장 세밀한 버킷으로 다시 묶습니다.
예를 들어 생년월일을 초 단위로 묶었는데 고유 시각이 너무 많고 해당 데이터에서는 시간 단위가 한도에 맞는 가장 세밀한 단위라면, Second 대신 Hour로 다시 묶습니다.
차트 선택은 다음 보드에 필터로 전달합니다. Ctrl+클릭 또는 Cmd+클릭으로 여러 지점을 고르며, 이동과 확대/축소 및 툴팁을 사용할 수 있습니다.
Grid
두 열의 고유값 조합을 셀로 만들고 집계값을 색으로 표시합니다. 두 개보다 많은 차원을 비교하려면 Pivot Table을 사용합니다.
X-Axis와 Y-Axis에 열을 지정하고 셀의 집계를 선택합니다. Count, Unique Count, Min, Max, Sum, Mean, Approx. Median, Standard Deviation, Variance를 지원합니다.
가상 customer_data 테이블에서 교육 수준과 연간 소득의 조합별 행 수를 계산하는 SQL 대응은 다음과 같습니다.
SELECT education_level, yearly_income, COUNT(*) AS row_count
FROM customer_data
GROUP BY education_level, yearly_income
셀을 하나 이상 선택하면 다음 보드에 필터를 적용합니다. 다시 선택하면 해제하며 Keep 또는 Remove를 지정합니다.
Heatmap
위도와 경도 데이터를 지도 위에 집계값의 색으로 표시합니다. 선택적으로 geohash 열도 지정할 수 있습니다.
집계는 Count, Unique Count, Min, Max, Sum, Mean, Approx. Median, Standard Deviation, Variance를 지원합니다.
원 그리기 도구를 선택하고 지도를 끌어 반경을 정합니다.
Keep 또는 Remove로 반경 안의 데이터를 남기거나 제외합니다. 원 밖을 클릭하면 선택과 필터를 해제합니다.
Pivot table
여러 차원의 조합별로 여러 집계를 계산합니다. 다음은 고객의 나이, 결혼 여부와 성별을 조합한 예시입니다.
미리보기와 전체 결과
표시되는 집계값은 전체 입력을 대상으로 계산하지만 미리보기에는 모든 결과가 나오지 않습니다. 대부분 환경의 행 계산 한도는 1,000행이고 일반적으로 사용자가 설정할 수 없습니다. 반환된 각 행은 완전한 집계 결과이지만, 반드시 1,000행을 받거나 모든 결과 행을 받는다는 뜻은 아닙니다.
큰 피벗에는 100열 또는 10,000값 범위의 미리보기 제한도 고려합니다. 실제 화면에 보인 범위만으로 전체 결과 규모를 판단하지 않습니다.
다음 설정은 행 그룹 PERIOD와 PRACTICE, 열 그룹 POSTCODE를 사용하고 Count 및 NAME의 Max를 계산하는 예시입니다.
피벗의 열을 클릭하여 정렬하면 미리보기 안에서만 정렬합니다. 전체 결과를 다루려면 Switch to pivoted data로 전환하고 다음 보드에서 확인합니다. 전체 집계 결과를 정렬할 때는 전환 이후 Sort 보드를 사용합니다. 상위 필터로 결과 규모를 줄일 수도 있습니다.
그룹과 집계 설정
Columns에 선택한 열들의 값 조합은 피벗의 열을, Rows의 값 조합은 피벗의 행을 만듭니다. Columns, Rows와 Aggregates 사이에서 항목을 끌어 옮길 수 있습니다.
집계는 Count, Unique Count, Min, Max, Sum, Mean, Approx. Median, Standard Deviation, Variance를 지원하며 여러 집계를 동시에 지정할 수 있습니다.
열 그룹 값은 대소문자를 무시했을 때 중복되지 않아야 합니다. 예를 들어 Borough에 Brooklyn과 brooklyn이 함께 있으면 피벗 결과 열 이름이 충돌할 수 있으므로 먼저 값을 같은 대소문자로 정리합니다.
Grand total은 행, 열 또는 양쪽에 계산할 수 있습니다. 전체 합계는 화면의 집계값들을 단순히 다시 합치는 방식이 아니라 전체 데이터에 원래 집계를 적용합니다. Unique Count의 전체 합계는 전체 데이터의 고유값 수이고 Mean의 전체 합계는 전체 데이터의 평균입니다.
집계 데이터로 전환
Pivot 또는 Switch to pivoted data를 선택하면 다음 보드는 원래 입력 대신 집계 결과를 사용합니다. 결과에는 선택한 그룹 열과 집계 결과 열이 포함되며 grand total 행 및 열은 포함하지 않습니다. 집계 결과 전환의 캐시 및 열 이름 조건도 확인합니다.
Column editor
열을 제거하거나 새 열을 계산합니다. 다음 보드는 선택한 실제 열 구성을 받습니다.
새 열에는 이항 연산, 문자열의 숫자 또는 날짜 변환 등을 사용할 수 있습니다. 다음은 가상 households 테이블의 1인당 소득을 계산하는 Spark SQL 대응이며, 입력의 Household Members 값은 0이 아니라는 전제를 사용합니다.
SELECT
`Household Members`,
`Marital Status`,
`Income Column` / `Household Members` AS `Income per person`
FROM households
Show existing columns에서 열을 선택하여 제거하고 다시 선택하여 되돌립니다. 여러 열을 제거할 때는 Remove All 후 유지할 열만 선택할 수 있습니다.
Remove duplicate rows를 켜면 중복 행도 제거합니다.
가상 example_data의 columnA부터 columnE까지 중 세 열만 유지하는 SQL은 다음과 같습니다.
SELECT columnA, columnB, columnC
FROM example_data
Multi-column editor
열을 재정렬하거나 이름을 바꾸고 제거하며 중복 행도 제거할 수 있습니다. 왼쪽 All Columns에서 오른쪽 Kept Columns로 유지할 열을 정합니다. Kept Columns에서 순서, 이름과 일괄 이름 변경을 구성합니다.
앞의 example_data에서 세 열을 유지하고 columnA를 columnA_1로 바꾸는 SQL 대응은 다음과 같습니다.
SELECT columnA AS columnA_1, columnB, columnC
FROM example_data
Enrich
현재 데이터셋에 다른 데이터셋을 조인하고 매칭한 상대 열을 추가합니다. 조인 설정과 결과를 참고합니다.
Link
다른 데이터셋에 조인하여 일치한 오른쪽 데이터셋의 레코드와 열만 반환합니다. 왼쪽 열을 유지하는 Set math의 keep only와 반환 방향이 다릅니다.
Set math
다른 데이터셋을 기준으로 행을 유지(keep only), 추가(add)하거나 제거(remove)합니다. Union 및 집합 비교에서 이름과 위치 대응, 중복 및 자료형 처리를 설명합니다.
Join
조직에서 관리자가 준비한 추천 조인 템플릿을 제공할 수 있습니다. 추천 조인을 추가하거나 바꾸려면 관리자에게 요청합니다. 직접 유형과 키를 고르는 Join 설정에서는 left, inner, right, full join을 구성합니다.
Export
분석 결과를 CSV 또는 XLS 파일로 내려받습니다. 드롭다운에서 csv 또는 xls를 고르고 Export를 선택합니다. 서버 처리가 끝나면 파일 이름을 정하고 Download <#> records를 선택합니다.
환경별 반출 행 수와 권한 제한은 내보내기 FAQ를 확인합니다.
Reorder columns
열을 끌어 원하는 순서로 바꿉니다.
Macro
미리 만든 매크로를 경로에 적용하여 템플릿화한 변환을 재사용합니다.
Sort
분석의 전체 데이터를 하나 이상의 열로 정렬합니다. 정렬은 분석에 한정되며 저장 데이터셋에 지속되는 행 순서를 보장하지 않습니다. 뒤의 조인, 중복 제거 등 집계나 재구성에서 순서가 사라질 수 있으므로 이런 연산을 먼저 하고 마지막에 정렬하는 것이 권장됩니다.
Calculation
Unique Count, Min, Max, Sum, Mean, Median, Standard Deviation, Variance 지표를 여러 개 표시합니다.
형식은 card 또는 list를 선택합니다. Card에는 가로 또는 세로 방향과 지표 크기 옵션이 있습니다.
각 계산에 조건부 서식 규칙을 지정하여 글자색과 배경색을 바꿀 수 있습니다.
Unpivot
선택한 열들을 행으로 바꿉니다. 원래 열 이름이 들어가는 header 열과 원래 값이 들어가는 value 열 두 개를 만들어 데이터를 재구성합니다.