Comece agoraComece grátis

Atualizando a função definida pelo usuário para fazer subtração

A função em que você trabalhou no exercício anterior não consegue fazer subtração. Dê uma olhada nesta função:

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

Essa função lida com adição e subtração nos numeradores e denominadores de índices financeiros. Note que a função usa np.where. Essa é uma função do pacote NumPy. np.where verifica se o primeiro argumento é True; se for, retorna o segundo argumento, caso contrário, retorna o terceiro. Por exemplo, acima temos:

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

Se addition_in_numerator for verdadeiro, np.where retornará df[numerator].sum(axis=1), caso contrário retornará df[numerator[0]] - df[numerator[1:]].sum(axis=1).

Neste exercício, o DataFrame balance_sheet, juntamente com pandas e NumPy como pd e np, respectivamente, já foram carregados para você. Use-os para determinar qual das afirmações a seguir está correta.

Este exercicio faz parte do curso

Análise de Demonstrativos Financeiros em Python

Ver curso

exercicio interativo prático

Transforme teoria em prática com um dos nossos exercicio interativos

Iniciar exercicio