fork(1) download
  1. import pandas as pd
  2.  
  3. # Datos del problema
  4. inversion_inicial = 105000
  5. ingreso_anual = 30000
  6. valor_salvataje = 5000
  7. vida_util = 5
  8. tasa_impuesto = 0.34
  9. costo_capital = 0.09
  10.  
  11. # Depreciación lineal
  12. depreciacion_anual = (inversion_inicial - valor_salvataje) / vida_util
  13.  
  14. # Cálculos anuales
  15. data = []
  16. flujo_caja_total = 0
  17.  
  18. for año in range(1, vida_util + 1):
  19. # Ingreso antes de impuestos
  20. ingreso_bruto = ingreso_anual
  21.  
  22. # Depreciación
  23. dep = depreciacion_anual
  24.  
  25. # Utilidad antes de impuestos (UAII)
  26. utilidad_antes_imp = ingreso_bruto - dep
  27.  
  28. # Impuesto
  29. impuesto = utilidad_antes_imp * tasa_impuesto
  30.  
  31. # Utilidad neta
  32. utilidad_neta = utilidad_antes_imp - impuesto
  33.  
  34. # Flujo de caja neto (Utilidad neta + depreciación)
  35. flujo_caja_neto = utilidad_neta + dep
  36.  
  37. # Si es el último año, sumar valor de salvataje
  38. if año == vida_util:
  39. flujo_caja_neto += valor_salvataje
  40.  
  41. flujo_caja_total += flujo_caja_neto
  42.  
  43. data.append([año, ingreso_bruto, dep, utilidad_antes_imp, impuesto, utilidad_neta, flujo_caja_neto])
  44.  
  45. # Crear DataFrame
  46. df = pd.DataFrame(data, columns=["Año", "Ingreso Bruto", "Depreciación", "UAII", "Impuesto", "Utilidad Neta", "Flujo de Caja Neto"])
  47.  
  48. # Calcular VAN
  49. van = -inversion_inicial
  50. for i, row in df.iterrows():
  51. van += row["Flujo de Caja Neto"] / ((1 + costo_capital) ** row["Año"])
  52.  
  53. # Agregar flujo de caja acumulado
  54. df["Flujo Caja Acumulado"] = df["Flujo de Caja Neto"].cumsum()
  55.  
  56. import caas_jupyter_tools
  57. caas_jupyter_tools.display_dataframe_to_user(name="Evaluación Financiera del Equipo", dataframe=df)
  58.  
  59. van, flujo_caja_total
Success #stdin #stdout 0.03s 25788KB
stdin
Standard input is empty
stdout
import pandas as pd

# Datos del problema
inversion_inicial = 105000
ingreso_anual = 30000
valor_salvataje = 5000
vida_util = 5
tasa_impuesto = 0.34
costo_capital = 0.09

# Depreciación lineal
depreciacion_anual = (inversion_inicial - valor_salvataje) / vida_util

# Cálculos anuales
data = []
flujo_caja_total = 0

for año in range(1, vida_util + 1):
    # Ingreso antes de impuestos
    ingreso_bruto = ingreso_anual
    
    # Depreciación
    dep = depreciacion_anual
    
    # Utilidad antes de impuestos (UAII)
    utilidad_antes_imp = ingreso_bruto - dep
    
    # Impuesto
    impuesto = utilidad_antes_imp * tasa_impuesto
    
    # Utilidad neta
    utilidad_neta = utilidad_antes_imp - impuesto
    
    # Flujo de caja neto (Utilidad neta + depreciación)
    flujo_caja_neto = utilidad_neta + dep
    
    # Si es el último año, sumar valor de salvataje
    if año == vida_util:
        flujo_caja_neto += valor_salvataje
    
    flujo_caja_total += flujo_caja_neto
    
    data.append([año, ingreso_bruto, dep, utilidad_antes_imp, impuesto, utilidad_neta, flujo_caja_neto])

# Crear DataFrame
df = pd.DataFrame(data, columns=["Año", "Ingreso Bruto", "Depreciación", "UAII", "Impuesto", "Utilidad Neta", "Flujo de Caja Neto"])

# Calcular VAN
van = -inversion_inicial
for i, row in df.iterrows():
    van += row["Flujo de Caja Neto"] / ((1 + costo_capital) ** row["Año"])

# Agregar flujo de caja acumulado
df["Flujo Caja Acumulado"] = df["Flujo de Caja Neto"].cumsum()

import caas_jupyter_tools
caas_jupyter_tools.display_dataframe_to_user(name="Evaluación Financiera del Equipo", dataframe=df)

van, flujo_caja_total