2 분 소요

Pandas 퀴즈

다음은 대한민국 영화 중에서 관객 수가 가장 많은 상위 8개의 데이터입니다.

주어진 코드를 이용하여 퀴즈를 풀어보시오.

import pandas as pd
data = {
    '영화' : ['명량', '극한직업', '신과함께-죄와 벌', '국제시장', '괴물', '도둑들', '7번방의 선물', '암살'],
    '개봉 연도' : [2014, 2019, 2017, 2014, 2006, 2012, 2013, 2015],
    '관객 수' : [1761, 1626, 1441, 1426, 1301, 1298, 1281, 1270], # (단위 : 만 명)
    '평점' : [8.88, 9.20, 8.73, 9.16, 8.62, 7.64, 8.83, 9.10]
}
df = pd.DataFrame(data)
df
영화 개봉 연도 관객 수 평점
0 명량 2014 1761 8.88
1 극한직업 2019 1626 9.20
2 신과함께-죄와 벌 2017 1441 8.73
3 국제시장 2014 1426 9.16
4 괴물 2006 1301 8.62
5 도둑들 2012 1298 7.64
6 7번방의 선물 2013 1281 8.83
7 암살 2015 1270 9.10

1) 전체 데이터 중에서 ‘영화’ 정보만 출력하시오.

df['영화']
0           명량
1         극한직업
2    신과함께-죄와 벌
3         국제시장
4           괴물
5          도둑들
6      7번방의 선물
7           암살
Name: 영화, dtype: object

2) 전체 데이터 중에서 ‘영화’,’평점’ 정보를 출력하시오.

df[['영화','평점']]
영화 평점
0 명량 8.88
1 극한직업 9.20
2 신과함께-죄와 벌 8.73
3 국제시장 9.16
4 괴물 8.62
5 도둑들 7.64
6 7번방의 선물 8.83
7 암살 9.10

3) 2015년 이후에 개봉한 영화 데이터 중에서 ‘영화’, ‘개봉 연도’ 정보를 출력하시오.

# filt = df['개봉 연도'] >= 2015
# df[filt][['영화','개봉 연도']]
df.loc[df['개봉 연도'] >= 2015, ['영화','개봉 연도']] # row sel, col sel
영화 개봉 연도
1 극한직업 2019
2 신과함께-죄와 벌 2017
7 암살 2015

4) 주어진 계산식을 참고하여 ‘추천 점수’ Column을 추가하시오.

추천 점수 = (관객수*평점)//100

예) 첫 번째 영화인 ‘명량’의 경우,

추천 점수 = (관객수 1761*평점 8.88)//100 = 156

df['추천 점수'] = (df['관객 수'] * df['평점']) // 100
df
영화 개봉 연도 관객 수 평점 추천 점수
0 명량 2014 1761 8.88 156.0
1 극한직업 2019 1626 9.20 149.0
2 신과함께-죄와 벌 2017 1441 8.73 125.0
3 국제시장 2014 1426 9.16 130.0
4 괴물 2006 1301 8.62 112.0
5 도둑들 2012 1298 7.64 99.0
6 7번방의 선물 2013 1281 8.83 113.0
7 암살 2015 1270 9.10 115.0

5. 전체 데이터를 ‘개봉 연도’ 기준 내림차순으로 출력하시오.

df.sort_values(['개봉 연도'],ascending=False)
영화 개봉 연도 관객 수 평점 추천 점수
1 극한직업 2019 1626 9.20 149.0
2 신과함께-죄와 벌 2017 1441 8.73 125.0
7 암살 2015 1270 9.10 115.0
0 명량 2014 1761 8.88 156.0
3 국제시장 2014 1426 9.16 130.0
6 7번방의 선물 2013 1281 8.83 113.0
5 도둑들 2012 1298 7.64 99.0
4 괴물 2006 1301 8.62 112.0

댓글남기기