1. 학습
  2. /
  3. 강의
  4. /
  5. Python으로 재무제표 분석하기

Connected

연습 문제

사용자 정의 함수를 뺄셈도 처리하도록 업데이트하기

이전 연습 문제에서 만든 함수는 뺄셈을 할 수 없었어요. 아래 함수를 확인해 보세요:

def compute_ratio(df, numerator, denominator, ratio_name, 
                  addition_in_numerator = True,
                  addition_in_denominator = True):
  numerator_of_ratio = np.where(addition_in_numerator,
                             df[numerator].sum(axis=1), 
                             df[numerator[0]] - df[numerator[1:]].sum(
                               axis=1))
  denominator_of_ratio = np.where(addition_in_denominator, 
                               df[denominator].sum(axis=1), 
                               df[denominator[0]] - df[denominator[1:]].sum(axis=1))
  df[ratio_name] = numerator_of_ratio/denominator_of_ratio
  return df

이 함수는 재무 비율의 분자와 분모에서 더하기와 빼기를 모두 처리할 수 있어요. 함수가 np.where를 사용한다는 점에 주목하세요. 이것은 NumPy 패키지의 함수예요. np.where는 첫 번째 인자가 True인지 확인하고, 그렇다면 두 번째 인자를, 그렇지 않다면 세 번째 인자를 반환해요. 예를 들어, 위 코드에서 다음 부분은 이렇게 동작해요:

np.where(addition_in_numerator,
                             df[numerator].sum(axis=1), 
                             df[numerator[0]] - df[numerator[1:]].sum(
                               axis=1))

addition_in_numerator가 true이면 np.where는 df[numerator].sum(axis=1)을 반환하고, 그렇지 않으면 df[numerator[0]] - df[numerator[1:]].sum(axis=1)을 반환해요.

이번 연습 문제에서는 balance_sheet DataFrame과 pandas, NumPy가 각각 pd와 np로 이미 로드되어 있어요. 이를 사용해 아래 진술 중 어느 것이 옳은지 판단해 보세요.

지침

50 XP

가능한 답변