Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 |
Tags
- data
- 반복문
- wcss
- analizer
- string
- DataFrame
- sklearn
- pandas
- DataAccess
- IN
- nan
- 분류 결과표
- dendrogram
- list
- Dictionary
- 덴드로그램
- append()
- count()
- Machine Learning
- function
- del
- hierarchical_clustering
- len()
- numpy
- 최솟값
- elbow method
- matplotlib
- Python
- 최댓값
- insert()
Archives
- Today
- Total
개발공부
[Python]Pandas 카테고리컬 데이터 확인하기, 이를 묶어 처리하기 groupby() 본문
groupby()
카테고리컬 데이터의 각 데이터별로 묶어서 처리하는 방법
카테고리컬 데이터인지 알 수 있는 방법은 nunique()와 unique()를 이용하면 된다.
# 카테고리컬 데이터 (Categorical Data)
# 갯수가 정해져있고 그 안에서 나눌 수 있는 것
>>> df['Year'].nunique()
3
>>> df['Year'].unique()
array([1990, 1991, 1992], dtype=int64)
df의 행갯수는 8개인데 Year 컬럼의 유니크한 갯수는 3개이다.
그러므로 Year의 데이터는 카테고리컬 데이터이다.
# 각 년도'별로' 연봉 총합 구하라
>>> df.groupby('Year')['Salary'].sum()
Year
1990 153000
1991 162000
1992 174000
Name: Salary, dtype: int64
# 각 직원별로, 연봉을 평균 얼마씩 받았는지 구하라
>>> df.groupby('Name')['Salary'].mean()
Name
Alice 54000.0
Bob 50000.0
Charlie 59000.0
Name: Salary, dtype: float64
# 년도별, 부서별로 연봉은 총 얼마씩 지급하였는지 구하라
>>> df.groupby(['Year', 'Department'])['Salary'].sum()
Year Department
1990 Admin 55000
HR 50000
RD 48000
1991 Admin 60000
HR 52000
RD 50000
1992 Admin 62000
HR 60000
RD 52000
Name: Salary, dtype: int64
여러개의 계산값 얻기 agg()
# 년도별 연봉 총합과 평균을 구하라
import numpy as np
df.groupby('Year')['Salary'].agg([np.sum, np.mean])
'Python > Pandas' 카테고리의 다른 글
[Python] Pandas 데이터 정렬하기 sort_values(), sort_index() (0) | 2022.05.03 |
---|---|
[Python] Pandas Dataframe 조건을 만족하는 데이터 얻기, apply()(=함수를 이용해 얻기) (0) | 2022.05.03 |
[Python] Pandas Dataframe NaN 다루기 (0) | 2022.05.02 |
[Python] Pandas Dataframe 인덱스, 컬럼명 변경하기(rename()), 컬럼을 인덱스로 사용하기(set_index(),reset_index()) (0) | 2022.05.02 |
[Python] Pandas Dataframe 열과 행 생성, 삭제(append(), drop()) (0) | 2022.05.02 |