






Prepara tus exámenes y mejora tus resultados gracias a la gran cantidad de recursos disponibles en Docsity
Gana puntos ayudando a otros estudiantes o consíguelos activando un Plan Premium
Prepara tus exámenes
Prepara tus exámenes y mejora tus resultados gracias a la gran cantidad de recursos disponibles en Docsity
Prepara tus exámenes con los documentos que comparten otros estudiantes como tú en Docsity
Encuentra los documentos específicos para los exámenes de tu universidad
Estudia con lecciones y exámenes resueltos basados en los programas académicos de las mejores universidades
Responde a preguntas de exámenes reales y pon a prueba tu preparación
Consigue puntos base para descargar
Gana puntos ayudando a otros estudiantes o consíguelos activando un Plan Premium
Comunidad
Pide ayuda a la comunidad y resuelve tus dudas de estudio
Ebooks gratuitos
Descarga nuestras guías gratuitas sobre técnicas de estudio, métodos para controlar la ansiedad y consejos para la tesis preparadas por los tutores de Docsity
Un alcance sobre la herramienta Python para los estudiantes de economía.
Tipo: Resúmenes
1 / 10
Esta página no es visible en la vista previa
¡No te pierdas las partes importantes!







Programación Python para Economía y Finanzas
Autores:
“Python ha obtenido suficiente grado de armas para que ya no bajemos a R. Lo siento, gente R. Solía ser uno de ustedes, pero ya no descendemos a R.” - Chris Wiggins
En esta conferencia lo haremos
En esta etapa, no es nuestra intención hacer que intentes replicar todo lo que ves.
Trabajaremos en lo que sigue a un ritmo lento más adelante en la serie de conferencias.
Nuestro único objetivo para esta conferencia es darle una idea de lo que es Python y de lo que puede hacer.
1.2.1 Usos comunes
Python es un lenguaje de uso general que se usa en casi todos los dominios de aplicación, como
Utilizado ampliamente por los servicios de Internet y las empresas de alta tecnología, incluidos
Python es muy amigable para principiantes y a menudo se usa para enseñar informática y pro- gramación.
Por razones que discutiremos, Python es particularmente popular dentro de la comunidad científica con usuarios que incluyen la NASA, el CERN y prácticamente todas las ramas de la academia.
También está reemplazando herramientas familiares como Excel en los campos de finanzas y banca.
1.2.2 Popularidad relativa
La siguiente tabla, producida usando Stack Overflow Trends, muestra una medida de la popularidad relativa de Python
La figura indica no solo que Python se usa ampliamente, sino también que la adopción de Python se ha acelerado significativamente desde 2012.
Sospechamos que esto se debe al menos en parte a la adopción en el dominio científico, particular- mente en campos de rápido crecimiento como la ciencia de datos.
Por ejemplo, la popularidad de los pandas, una biblioteca para el análisis de datos con Python , ha explotado, como se ve aquí.
(La ruta de tiempo correspondiente para MATLAB se muestra para comparación)
Tenga en cuenta que los pandas despegan en 2012, que es el mismo año en que vemos que la popularidad de Python comienza a aumentar en la primera figura.
En general, está claro que
1.2.3 Características
Python es un lenguaje de alto nivel adecuado para un desarrollo rápido.
Tiene un lenguaje central relativamente pequeño compatible con muchas bibliotecas.
Otras características de Python :
2: array([-3.14159265, -3.07812614, -3.01465962, -2.9511931 , -2.88772658, -2.82426006, -2.76079354, -2.69732703, -2.63386051, -2.57039399, -2.50692747, -2.44346095, -2.37999443, -2.31652792, -2.2530614 , -2.18959488, -2.12612836, -2.06266184, -1.99919533, -1.93572881, -1.87226229, -1.80879577, -1.74532925, -1.68186273, -1.61839622, -1.5549297 , -1.49146318, -1.42799666, -1.36453014, -1.30106362, -1.23759711, -1.17413059, -1.11066407, -1.04719755, -0.98373103, -0.92026451, -0.856798 , -0.79333148, -0.72986496, -0.66639844, -0.60293192, -0.53946541, -0.47599889, -0.41253237, -0.34906585, -0.28559933, -0.22213281, -0.1586663 , -0.09519978, -0.03173326, 0.03173326, 0.09519978, 0.1586663 , 0.22213281, 0.28559933, 0.34906585, 0.41253237, 0.47599889, 0.53946541, 0.60293192, 0.66639844, 0.72986496, 0.79333148, 0.856798 , 0.92026451, 0.98373103, 1.04719755, 1.11066407, 1.17413059, 1.23759711, 1.30106362, 1.36453014, 1.42799666, 1.49146318, 1.5549297 , 1.61839622, 1.68186273, 1.74532925, 1.80879577, 1.87226229, 1.93572881, 1.99919533, 2.06266184, 2.12612836, 2.18959488, 2.2530614 , 2.31652792, 2.37999443, 2.44346095, 2.50692747, 2.57039399, 2.63386051, 2.69732703, 2.76079354, 2.82426006, 2.88772658, 2.9511931 , 3.01465962, 3.07812614, 3.14159265])
3: array([-1. , -0.99798668, -0.99195481, -0.9819287 , -0.9679487 , -0.95007112, -0.92836793, -0.90292654, -0.87384938, -0.84125353, -0.80527026, -0.76604444, -0.72373404, -0.67850941, -0.63055267, -0.58005691, -0.52722547, -0.47227107, -0.41541501, -0.35688622, -0.29692038, -0.23575894, -0.17364818, -0.1108382 , -0.04758192, 0.01586596, 0.07924996, 0.14231484, 0.20480667, 0.26647381, 0.32706796, 0.38634513, 0.44406661, 0.5 , 0.55392006, 0.60560969, 0.65486073, 0.70147489, 0.74526445, 0.78605309, 0.82367658, 0.85798341, 0.88883545, 0.91610846, 0.93969262, 0.95949297, 0.97542979, 0.98743889, 0.99547192, 0.99949654, 0.99949654, 0.99547192, 0.98743889, 0.97542979, 0.95949297, 0.93969262, 0.91610846, 0.88883545, 0.85798341, 0.82367658, 0.78605309, 0.74526445, 0.70147489, 0.65486073, 0.60560969, 0.55392006, 0.5 , 0.44406661, 0.38634513, 0.32706796, 0.26647381, 0.20480667, 0.14231484, 0.07924996, 0.01586596, -0.04758192, -0.1108382 , -0.17364818, -0.23575894, -0.29692038, -0.35688622, -0.41541501, -0.47227107, -0.52722547, -0.58005691, -0.63055267, -0.67850941, -0.72373404, -0.76604444, -0.80527026, -0.84125353, -0.87384938, -0.90292654, -0.92836793, -0.95007112, -0.9679487 , -0.9819287 , -0.99195481, -0.99798668, -1. ])
4: array([-1.22464680e-16, -6.34239197e-02, -1.26592454e-01, -1.89251244e-01, -2.51147987e-01, -3.12033446e-01, -3.71662456e-01, -4.29794912e-01, -4.86196736e-01, -5.40640817e-01, -5.92907929e-01, -6.42787610e-01, -6.90079011e-01, -7.34591709e-01, -7.76146464e-01, -8.14575952e-01, -8.49725430e-01, -8.81453363e-01, -9.09631995e-01, -9.34147860e-01, -9.54902241e-01, -9.71811568e-01, -9.84807753e-01, -9.93838464e-01, -9.98867339e-01, -9.99874128e-01, -9.96854776e-01, -9.89821442e-01, -9.78802446e-01, -9.63842159e-01, -9.45000819e-01, -9.22354294e-01, -8.95993774e-01, -8.66025404e-01, -8.32569855e-01, -7.95761841e-01, -7.55749574e-01, -7.12694171e-01, -6.66769001e-01, -6.18158986e-01, -5.67059864e-01, -5.13677392e-01, -4.58226522e-01, -4.00930535e-01, -3.42020143e-01, -2.81732557e-01, -2.20310533e-01, -1.58001396e-01, -9.50560433e-02, -3.17279335e-02, 3.17279335e-02, 9.50560433e-02, 1.58001396e-01, 2.20310533e-01, 2.81732557e-01, 3.42020143e-01, 4.00930535e-01, 4.58226522e-01, 5.13677392e-01, 5.67059864e-01, 6.18158986e-01, 6.66769001e-01, 7.12694171e-01, 7.55749574e-01, 7.95761841e-01, 8.32569855e-01, 8.66025404e-01, 8.95993774e-01, 9.22354294e-01, 9.45000819e-01, 9.63842159e-01, 9.78802446e-01, 9.89821442e-01, 9.96854776e-01, 9.99874128e-01, 9.98867339e-01, 9.93838464e-01, 9.84807753e-01, 9.71811568e-01, 9.54902241e-01, 9.34147860e-01, 9.09631995e-01, 8.81453363e-01, 8.49725430e-01, 8.14575952e-01, 7.76146464e-01, 7.34591709e-01, 6.90079011e-01, 6.42787610e-01, 5.92907929e-01, 5.40640817e-01, 4.86196736e-01, 4.29794912e-01, 3.71662456e-01, 3.12033446e-01, 2.51147987e-01, 1.89251244e-01, 1.26592454e-01, 6.34239197e-02, 1.22464680e-16])
5: b @ c
El número que ve aquí puede variar ligeramente, pero es esencialmente cero. (Para versiones anteriores de Python y NumPy , debe usar la función np.dot) La biblioteca SciPy está construida sobre NumPy y proporciona funcionalidad adicional. Por ejemplo, calculemos ^2 − 2 (z) · dz dónde es la densidad normal estándar
7: from scipy.stats import norm from scipy.integrate import quad
= norm() value, error = quad(.pdf, -2, 2) # Integrar usando el valor de la cuadratura ␣ ↪→ gaussiana value
SciPy incluye muchas de las rutinas estándar utilizadas en
x^2 + 2xy + y^2 Resolver polinomios
[12]: from sympy import solve
solve(x*2 + 3x + 2)
[12]: [-2, -1]
[13]: solve(x**2 + x + 2)
[13]: [-1/2 - sqrt(7)I/2, -1/2 + sqrt(7)I/2]
y calcular límites, derivadas e integrales
14: from sympy import limit, sin, diff
limit(1 / x, x, 0)
15: limit((x+2)**2, x, 0)
16: limit(sin(x) / x, x, 0)
17: diff(sin(x), x)
La belleza de importar esta funcionalidad a Python es que estamos trabajando dentro de un lenguaje de programación completo. Podemos crear fácilmente tablas de derivados, generar resultados de LaTeX, agregar ese resultado a las figuras, etc.
1.3.4 Estadísticas Las bibliotecas de estadísticas y manipulación de datos de Python han mejorado rápidamente en los últimos años.
Pandas Una de las bibliotecas más populares para trabajar con datos es pandas. Pandas es rápido, eficiente, flexible y bien diseñado. Aquí hay un ejemplo simple, usando algunos datos ficticios generados con la excelente funcionalidad random de Numpy.
[20]: import pandas as pd np.random.seed(1234)
data = np.random.randn(5, 2) # 5x2 matriz de N (0, 1) sorteos aleatorios dates = pd.date_range('28/12/2010', periods=5)
df = pd.DataFrame(data, columns=('precio', 'weight'), index=dates) print(df)
precio weight 2010-12-28 0.471435 -1. 2010-12-29 1.432707 -0. 2010-12-30 -0.720589 0. 2010-12-31 0.859588 -0. 2011-01-01 0.015696 -2.
21: precio 0. weight -0. dtype: float
1.3.5 Otras bibliotecas de estadísticas útiles
1.3.6 Redes y Gráficos Python tiene muchas bibliotecas para estudiar gráficos. Un ejemplo bien conocido es NetworkX. Sus características incluyen, entre muchas otras cosas:
[24]: import networkx as nx import matplotlib.pyplot as plt % matplotlib inline np.random.seed(1234)
Ver también
1.3.8 Procesamiento Paralelo Además de las opciones de computación en la nube enumeradas anteriormente, es posible que desee considerar
1.3.9 Otros desarrollos Hay muchos otros desarrollos interesantes con la programación científica en Python. Algunos ejemplos representativos incluyen
[ ]: