그룹화를 하는 이유
- 특정 데이터 그룹의 특징에 관한 정보를 얻기 위함
- Key별 분류 -> 각 그룹별 통계적 특징 도출
Pandas를 이용한 그룹화
- Pandas는 데이터를 그룹 별로 분류하는 groupby 메소드가 있으며 특정 열, 열의 리스트 또는 행 인덱스를 기준으로 그룹화를 진행
- groupby 연산 결과로 GroupBy 객체를 반환하는 것이 특징이며, 이 객체에는 그룹연산 메소드가 내장되어 있음
- 범주별 특징을 나타낼 수 있다.
Gropu By --> Method --> Aggregation sum mean / median std / var count min / max ...
GroupBy의 집계 함수
집계 함수 | 내용 |
count | 그룹 내 데이터 개수 |
sum | 그룹 내 데이터 값의 합계 |
mean, median | 그룹 내 데이터 값의 평균값, 중앙값 |
min, max | 그룹 내 데이터의 최소값, 최대값 |
var, std | 그룹 내 데이터 값의 분산, 표준편차 |
first, last | 그룹 내 데이터의 첫 번째 값, 마지막 값 |
Describe | 그룹 내 데이터의 기술통계량 |
aggregate or agg | 그룹 내 사용자 정의 함수와 메소드로 데이터에 적용 |
apply | 그룹 내 사용자 정의 함수와 메소드로 데이터에 적용 |
- 소개된 그룹 연산 메소드 외에도 다양한 함수들이 존재함
Groupby의 apply
- Groupby 객체의 apply 함수로 그룹별 다양한 연산 가능
- ex) grouped.apply(함수)
- 사용자 지정 함수 사용 가능
- lambda식과 자주 쓰이는 것이 특징
그룹별 반복 작업
- GroupBy 객체 그룹 별 반복 작업 방식과 특징
- GroupBy 객체는 반복문을 이용할 수 있음
- GroupBy 객체는 그룹 이름과 그룹별 데이터를 튜플 형태로 갖고 있음
- 각 그룹별 데이터는 원래의 인덱스 값을 갖고 있음
Pandas 정렬 함수
- Pandas의 Series나 DataFrame의 sort_values 함수를 이용하면 데이터를 정렬할 수 있음
- ex) 오름차순 정렬 : sort_values(by = '사용자수') / 내림차순 정렬 : sort_values(by = '사용자수', ascending = False)
- ex) sort_values(by = ['강좌 개수', '개발년도'], ascending = False)
- 강좌 개수를 기준으로 내림차순 정렬, 같은 값이 있다면 개발년도 기준으로 다시 정렬 순서 결정
'[KT] AIVLE School > 사전학습' 카테고리의 다른 글
데이터 전처리 이해와 실무 (1) - 데이터 정제 : 결측 데이터 처리 (0) | 2025.03.16 |
---|---|
데이터 조작 이해와 실무 (5) - 시계열 데이터 기초 (0) | 2025.03.12 |
데이터 조작 이해와 실무 (3) - 데이터 합치기 (0) | 2025.03.12 |
데이터 조작 이해와 실무 (2) - 데이터 변경 (1) | 2025.03.12 |
데이터 조작 이해와 실무 (1) - 데이터 선택 (0) | 2025.03.12 |