반응형
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 |
Tags
- 셀트리온
- 다우산업
- 금리인상
- 주식시황
- 무역전쟁
- 시황
- 트럼프
- 국제유가
- 영어메일쓰기
- 다우
- 사드보복완화
- Python
- 나스닥
- toeice-mail
- S&P
- Java
- 네마녀의날
- android
- 토익이메일
- Intent
- dataframe
- LG전자
- 파이썬
- e-mailwriting
- 영어메일
- 화승엔터프라이즈
- 안드로이드
- ruby
- 어학·외국어
- englishwriting
Archives
- Today
- Total
Developer MJ Story
[Python] Dataframe Groupby Multi Index 합 구하기 본문
반응형
안녕하세요.
집근처 개발자 입니다.
오늘은 Pyton DataFrame의 고급 기술인 gruopby의 사용법 중 Multi Level Index에서 합을 구하는 방법을 알려드리겠습니다.
아래와 같은 DataFrame이 있고,
name | number | value |
A | 280372080743000 | 1 |
B | 1316165527660 | 1 |
25346724082300 | 1 | |
108207143366000 | 2 | |
123330743073000 | 1 | |
174176341471000 | 3 | |
200204182164000 | 1 | |
223142021803000 | 1 | |
224032018487000 | 1 | |
310421238379000 | 1 | |
326054253084000 | 1 | |
330164855184000 | 1 | |
362163568567000 | 3 | |
364478720866000 | 1 | |
408020042415000 | 2 | |
540574871130000 | 1 | |
562831214873000 | 2 | |
585540722726000 | 1 | |
625068715424000 | 1 | |
684630620544000 | 4 | |
716057534724000 | 1 | |
721735485867000 | 1 | |
755537511287000 | 4 | |
781848786682000 | 5 | |
860572133301000 | 2 | |
885780683263000 | 2 | |
C | 160536473687000 | 15 |
310421238379000 | 28 | |
532536233280000 | 1 | |
605446013544000 | 18 | |
883534150403000 | 86 |
이런 Data를 아래와 같이 만드는 방법 입니다.
A | 1 |
B | 44 |
C | 148 |
단순 gruopby해서 sum()을 하면 전체 value의 합을 출력합니다.
이는 Multi level index로 구성된 dataframe이기 때문입니다.
이 문제를 해결하려면 해당 column을 다시 gruopby로 묶어서 sum을 구하면 원하는 결과를 얻을 수 있습니다.
code로 보면 아래와 같습니다.
df.groupby(['name']).sum()
너무 간단하죠.
name columns으로 기준으로 groupby해서 sum() 하면 됩니다.
이는 사실 df.groupby(['name', 'number'])를 실행 한 결과가 위의 dataframe이다.
두 레벨의 group으로 묶어서 multi level이 되었고, 이 multi level dataframe의 값들을 name 기준으로 sum() 하기위해 name 기준의 group으로 묶은 것이다.
반응형
'Software > Python&Ruby' 카테고리의 다른 글
[Python] Pandas, Dataframe 열(row) 합(sum)으로 나누기 (0) | 2018.02.05 |
---|---|
[Python] 그래프 한번에 여러개 그리(plt.subplots()) (0) | 2018.01.23 |
Python zip함수 (0) | 2017.06.12 |
Python 타입 변환 (round, floor, ceil) (0) | 2017.06.12 |
Python 연산자와 연산 우선순위 (0) | 2017.06.12 |