1. 코드
%matplotlib inline import pandas as pd import seaborn as sns
1. unique 한 데이터 값 출력하기
cities_df['Country'].unique()
2. 데이터 정렬 후 데이터프레임 형태로 출력하기
cities_df.sort_values('Land area (in sqKm)', ascending=False)
3. groupby 함수를 이용해 카테고리별로 합계 구하기 (sum, size, mean 함수 활용 가능)
cities_df.groupby(cities_df['Country']).sum().sort_values(by='Population', ascending=False)
4. 상위 10개 데이터 출력하기
cities_df.groupby(cities_df['Country']).sum().sort_values(by='Population', ascending=False).head(10)
5. size 함수로 데이터 형태 파악하기
cities_df.groupby(cities_df['Country']).size()
2. 발견한 인사이트
1. 'Population'(인구)와 'Land area'(면적) 간의 상관관계는 0.53으로 양의 상관관계를 갖는다고 할 수 있음
![](https://blog.kakaocdn.net/dn/q5mgQ/btq9Gmf6hdD/JqelN2YYJ0qiOZzPjk1tKk/img.png)
2. 'Population'(인구) 수가 가장 많은 상위 10개국은 'USA', 'Japan', 'India', 'Brazil', 'China', 'Mexico', 'Germany', 'France', 'South Korea', 'Russia'임
![](https://blog.kakaocdn.net/dn/bKdvrV/btq9EgVmN5N/kZkFAHIG4vzVRyL0AsLqf1/img.png)
3. 'Land area'(면적)이 가장 큰 상위 10개국은 'USA', 'Japan', 'France', 'Brazil', 'Canada', 'Germany', 'Australia', 'South Africa', 'India', 'UK'임 -> 인구 상위 10개국과 차이가 있음
![](https://blog.kakaocdn.net/dn/9Dn0E/btq9I47cbbJ/RTV3wAz59dgsJfNVv7YhPk/img.png)
3. 한 줄 평가
![](https://blog.kakaocdn.net/dn/cR9cfm/btq9HLG5AGh/1Dn0SW0lucaohcedkKkRi1/img.png)
- 아래의 방법으로 하면 정렬된 데이터프레임의 형태로 데이터를 볼 수 있음
![](https://blog.kakaocdn.net/dn/boIV6b/btq9DTMgIm3/xAzpzCkHSbFa08SVFiByjk/img.png)
- 전체 데이터는 249개이지만 산점도 그래프로 나타내니 값이 큰 데이터 때문에 정확한 상관관계를 파악하기 어려움 -> 그래프 사이즈 조절(??)
cf. groupby 함수로 그룹별 집계
[Python pandas] groupby() 로 그룹별 집계하기 (data aggregation by groups)
이번 포스팅에서는 Python pandas의 groupby() 연산자를 사용하여 집단, 그룹별로 데이터를 집계, 요약하는 방법을 소개하겠습니다. 전체 데이터를 그룹 별로 나누고 (split), 각 그룹별로 집계함수를 적
rfriend.tistory.com
'DA' 카테고리의 다른 글
#08. exam.csv (0) | 2021.07.19 |
---|---|
#07. body.csv (0) | 2021.07.19 |
#05. toeic.csv (0) | 2021.07.16 |
#04. liverpool.csv (0) | 2021.07.16 |
#03. laptops.csv (0) | 2021.07.16 |