Actualizar la función definida por el usuario para que haga restas
La función con la que trabajaste en el ejercicio anterior no puede hacer restas. Echa un vistazo a esta función:
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
Esta función permite realizar sumas y restas en numeradores y denominadores de ratios financieros. Fíjate en que la función usa np.where. Es una función del paquete NumPy. np.where comprueba si el primer argumento es True; si lo es, devuelve el segundo argumento; en caso contrario, devuelve el tercero. Por ejemplo, arriba tenemos:
np.where(addition_in_numerator,
df[numerator].sum(axis=1),
df[numerator[0]] - df[numerator[1:]].sum(
axis=1))
Si addition_in_numerator es verdadero, np.where devolverá df[numerator].sum(axis=1), y si no, devolverá df[numerator[0]] - df[numerator[1:]].sum(axis=1).
En este ejercicio, el DataFrame balance_sheet, junto con pandas y NumPy como pd y np, respectivamente, ya se han cargado por ti. Úsalos para determinar cuál de las siguientes afirmaciones es correcta.
Este ejercicio forma parte del curso
Análisis de estados financieros en Python
Ejercicio interactivo práctico
Pon en práctica la teoría con uno de nuestros ejercicios interactivos
Empezar ejercicio