해결된 질문
작성
·
107
0
아래 문제에서 100% 넘는 접종률을 먼저 삭제하지 않고, 문제에서 언급한 순서대로 풀이해야 하나요??
your code 부분에 적은대로 풀이를 하면 답이 다른데 이대로 풀면 안되는 이유가 궁금합니다!
문제 : 주어진 데이터에서 상위 10개 국가의 접종률 평균과 하위 10개 국가의 접종률 평균을 구하고, 그 차이를 구해보세요
(단, 100%가 넘는 접종률 제거, 소수 첫째자리까지 출력)
# your code
# 100%가 넘는 접종률 제거
cond = df["ratio"] <= 100
# 상위 10개 국가의 접종률 평균과 하위 10개 국가의 접종률 평균을 구하고,
df = df[cond]
df = df.sort_values("ratio", ascending = False)
top10 = df["ratio"].head(10).mean()
bottom10 = df["ratio"].tail(10).mean()
# 그 차이를 구해보세요(소수 첫째자리까지 출력)
print(round(top10 - bottom10,1))
풀이
df2 = df.groupby('country').max() #시간에 따라 접종률이 점점 올라감
df2 = df2.sort_values(by='ratio', ascending = False)
#100%가 넘는 접종률 제거
cond = df2['ratio'] <= 100
df2 = df2[cond]
top = df2['ratio'].head(10).mean()
bottom = df2['ratio'].tail(10).mean()
print(round(top - bottom,1))