시작하기무료로 시작하기

사용자 정의 함수로 플롯 만들기

이전 연습 문제에서 플롯을 만들기 위해 다음 코드를 작성하셨죠:

# tech와 fmcg 기업만 서브셋 만들기
subset_dat = dataset.loc[dataset["comp_type"].isin(["tech", "fmcg"])]

# tech와 fmcg 기업의 연도별 평균 매출총이익률 계산
subset_dat_avg = subset_dat.pivot_table(index=["Year", "comp_type"], values = "gross_margin").reset_index()

# company 열 추가
subset_dat_avg["company"] = np.where(subset_dat_avg["comp_type"]=="tech", "Avg tech", "Avg fmcg")

# DataFrame 연결
plot_df = pd.concat([subset_dat, subset_dat_avg], axis=0)

# 플롯 그리기
sns.relplot(data=plot_df.reset_index(drop=True), x="Year", y="gross_margin", hue="company", col="comp_type", kind="line")
plt.show()
plt.close()

이번 연습 문제에서는 tech와 FMCG DataFrame에 대해 동일한 작업을 반복하고 있음을 확인할 수 있습니다. 이는 DRY(Don't repeat yourself, 반복 금지)라는 코딩 원칙에 어긋납니다. 반복 코드는 작업량을 늘리고 실수 가능성도 높입니다. 이번에는 데이터를 처리하고 그림을 그리는 함수를 직접 정의해 보겠습니다.

이 연습은 강의의 일부입니다

Python으로 재무제표 분석하기

강의 보기

실습형 인터랙티브 연습문제

이론을 실습으로 바꾸는 인터랙티브 연습 중 하나를 만나보세요

연습 시작