728x90
반응형
groupBy
https://pandas.pydata.org/docs/reference/api/pandas.DataFrame.groupby.html
특정 컬럼의 값을 기준으로 데이터 그룹핑 후 연산하기
data = pd.DataFrame({'key1':['a','a','b','b','a'],
'key2':['one','two','one','two','one'],
'data1':np.random.randn(5),
'data2':np.random.randn(5)})
grouped = data.groupby('key1')
grouped.mean()
|
groupBy 객체 조회
for n, d in grouped:
print(n)
print(d, end='\n\n')
gdict = dict(list(grouped))
gdict['b']
columns mapping
data = pd.DataFrame(np.random.randn(5,5),
columns=['t1','t2','g1','t3','g2'],
index=['bob','joe','james','travis','wes'])
mapping = {'t1':'TV', 't2':'TV','g1':'GAME','t3':'TV', 'g2':'GAME'}
data.groupby(mapping, axis=1).mean()
index labeling
labeld = ['one','one','one','two','two']
data.groupby(labeld, axis=0).mean()
groupBy 매개 함수 정의
data.groupby(lambda x : x[0], axis=1).mean()
agg()
여러개의 함수를 여러 열에 적용
사용자 정의 함수를 적용할 수도 있다.
grouped.agg(['mean','std'])
def min_max(x):
return x.max()-x.min()
grouped.agg(min_max)
728x90
반응형
'Python > Pandas' 카테고리의 다른 글
[Pandas] 데이터 정렬하기 (0) | 2022.04.26 |
---|---|
[Pandas] 데이터프레임 병합 (0) | 2022.04.26 |
[Pandas] 데이터프레임 연결 (0) | 2022.04.26 |
[Pandas] Pandas 개념 (0) | 2022.04.25 |
[Pandas] apply 함수, applymap 함수, map 함수 (0) | 2021.05.10 |