Run The Bridge

Pandas 기초(8) 본문

Python/Pandas

Pandas 기초(8)

anfrhrl5555 2020. 9. 7. 15:44
728x90
반응형
1
2
3
4
5
6
7
8
9
10
11
12
13
14
import pandas as pd
student_list = [{'name''John''major'"Computer Science"'sex'"male"},
                {'name''Nate''major'"Computer Science"'sex'"male"},
                {'name''Abraham''major'"Physics"'sex'"male"},
                {'name''Brian''major'"Psychology"'sex'"male"},
                {'name''Janny''major'"Economics"'sex'"female"},
                {'name''Yuna''major'"Economics"'sex'"female"},
                {'name''Jeniffer''major'"Computer Science"'sex'"female"},
                {'name''Edward''major'"Computer Science"'sex'"male"},
                {'name''Zara''major'"Psychology"'sex'"female"},
                {'name''Wendy''major'"Economics"'sex'"female"},
                {'name''Sera''major'"Psychology"'sex'"female"}
         ]
df = pd.DataFrame(student_list, columns = ['name''major''sex'])
cs

다음과 같은 DataFrame을 생성한다.



여기서 major끼리 묶어서 보고싶을 때 Groupby를 써준다.

1
groupby_major = df.groupby('major')
cs


1
groupby_major.groups
cs



Result


아니..아니.. 여기서 더 쉽게 보고싶을 때!! 가시성을 높여줘


1
2
3
4
for name, group in groupby_major:
    print(name + " : " + str(len(group)))
    print(group)
    print()
cs


Result


내 생각: group이라고 쓰면 각 타입의 인덱스를 리스트로 가지고 있는것 같다.


여기서 major의 숫자만 가지고 DataFrame를 만들고 싶을 때


1
df_major_cnt = pd.DataFrame({'count' : groupby_major.size()}).reset_index()
cs


count라는 Colmun을 가지는데, groupby_major.size 즉, 크기만 알고싶을 때


Result



남녀성비 확인하는 방법

1
groupby_sex = df.groupby('sex')
cs


1
2
3
4
for name, group in groupby_sex:
    print(name + " : " +str(len(group)))
    print(group)
    print()
cs


Result




감사합니다 Thank you!



728x90
반응형

'Python > Pandas' 카테고리의 다른 글

Pandas 기초(10)  (0) 2020.09.07
Pandas 기초(9)  (0) 2020.09.07
Pandas 기초(7)  (0) 2020.09.07
Pandas 기초(6)  (0) 2020.09.03
Pandas 기초(5)  (0) 2020.09.03
Comments