728x90
1. 데이터 확인 및 구조 탐색
1.1 테이블의 구조 확인
- 테이블의 컬럼 이름과 데이터 타입 확인.
DESCRIBE table_name;
SHOW COLUMNS FROM table_name;
1.2 데이터 미리보기
- 테이블의 첫 몇 행을 확인하여 데이터 구조를 이해.
SELECT * FROM table_name LIMIT 10;
2. 데이터 요약 및 기본 통계
2.1 행 개수 확인
- 데이터의 전체 크기(행 수)를 확인
SELECT COUNT(*) AS total_rows FROM table_name;
2.2 고유 값 개수 확인
- 특정 컬럼의 고유 값 개수 계산
SELECT COUNT(DISTINCT column_name) AS unique_values FROM table_name;
2.3 특정 컬럼의 최소, 최대, 평균, 합계 계산
- 기본적인 통계치를 계산.
SELECT MIN(column_name) AS min_value,
MAX(column_name) AS max_value,
AVG(column_name) AS average_value,
SUM(column_name) AS total_sum
FROM table_name;
2.4 Null 값 확인
- 특정 컬럼에서 Null 값의 개수 확인.
SELECT COUNT(*) AS null_count FROM table_name WHERE column_name IS NULL;
3. 데이터 분포 확인
3.1 그룹별 집계
- 특정 컬럼별 데이터 분포를 확인
SELECT column_name, COUNT(*) AS count FROM table_name GROUP BY column_name ORDER BY count DESC;
3.2 값의 빈도수 확인
- 특정 값의 빈도 계산
SELECT column_name, COUNT(*) AS frequency FROM table_name GROUP BY column_name ORDER BY frequency DESC;
3.3 값 구간화 및 그룹화
- 예: 나이(age)를 기준으로 구간을 나누어 빈도를 확인
SELECT CASE WHEN age BETWEEN 0 AND 18 THEN '0-18'
WHEN age BETWEEN 19 AND 35 THEN '19-35'
WHEN age BETWEEN 36 AND 50 THEN '36-50'
ELSE '50+'
END AS age_group,
COUNT(*) AS count
FROM table_name
GROUP BY age_group
ORDER BY count DESC;
4. 데이터 관계 탐색
4.1 두 컬럼 간 상관 관계 탐색
- 그룹화하여 두 컬럼의 관계를 요약
SELECT column1, column2, COUNT(*) AS count FROM table_name GROUP BY column1, column2 ORDER BY count DESC;
4.2 조인(Join)을 통한 관계 분석
- 두 테이블을 연결해 관계를 확인
SELECT a.column1, b.column2 FROM table1 a JOIN table2 b ON a.common_column = b.common_column WHERE a.column1 > 10;
5. 이상치 및 데이터 품질 확인
5.1 특정 조건에서 이상치 확인
- 값이 너무 크거나 작은 경우 확인
SELECT * FROM table_name WHERE column_name > 1000 OR column_name < 0;
5.2 Null 값 비율 계산
- 컬럼별 Null 비율을 계산
SELECT column_name, COUNT(*) AS total_count, SUM(CASE WHEN column_name IS NULL THEN 1 ELSE 0 END) AS null_count, (SUM(CASE WHEN column_name IS NULL THEN 1 ELSE 0 END) * 100.0 / COUNT(*)) AS null_percentage FROM table_name;
6. 데이터 정렬 및 필터링
6.1 특정 조건으로 필터링
- 조건에 맞는 데이터를 추출
SELECT * FROM table_name WHERE column_name = 'specific_value';
6.2 정렬된 데이터 확인
- 특정 컬럼 기준으로 정렬
SELECT * FROM table_name ORDER BY column_name DESC LIMIT 10;
7. 파생 데이터 생성
7.1 계산된 컬럼 추가
- 새로운 계산된 필드를 생성
SELECT column1, column2, (column1 * column2) AS calculated_field FROM table_name;
7.2 조건에 따른 새로운 컬럼 생성
- 특정 조건을 만족하는 새로운 필드를 생성
SELECT column_name, CASE WHEN column_name > 100 THEN 'High' ELSE 'Low' END AS category FROM table_name;
728x90
'빅데이터 분석기사[python] > 데이터 분석' 카테고리의 다른 글
[데이터 분석] 1-5. 데이터 품질 검증 (0) | 2024.12.23 |
---|---|
[데이터 분석] 1-3. 데이터 변환 (0) | 2024.12.23 |
[데이터 분석] 1-2. 데이터 유형 및 속성 파악 (0) | 2024.12.22 |
[데이터 분석] 1-1. 데이터 수집 (0) | 2024.12.22 |