Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Fecha: 02/05/2022
# Primero guarde el valor de ventas anuales de tres compañías en las variables ventas_1, ventas_2, y ventas_3.
# Los valores son, respectivamente, 229.23, 177.86, y 89.95.
In [12]: ventas_1=229.23
ventas_2=177.86
ventas_3=89.95
suma_ventas_totales=ventas_1+ventas_2+ventas_3
print('suma de ventas: ')
print(suma_ventas_totales)
print('--------------')
print('promedio de ventas: ')
print(suma_ventas_totales/3)
print('--------------')
suma de ventas:
497.04
--------------
promedio de ventas:
165.68
--------------
In [13]: # Ejercicio 2
# Las variables guardan un valor que puede ser de diferente tipo. Los nombres de variables pueden contener letr
# guiones bajos.
In [16]: compañía_1='Apple'
print(type(compañía_1))
print('--------------')
año_1=2017
print(type(año_1))
print('--------------')
ventas_1=229.23
print(type(ventas_1))
print('--------------')
<class 'str'>
--------------
<class 'int'>
--------------
<class 'float'>
--------------
In [17]: # Ejercicio 3
# Cargue en la variable test_compañía el string "apple"
# Determine si la variable test_compañía es igual a la variable compañía_1
In [21]: print('test_compañía==compañía_1')
test_compañía="apple"
print(test_compañía==compañía_1)
print('--------------')
print('ventas_1>ventas_2')
print(ventas_1>ventas_2)
print('--------------')
test_compañía==compañía_1
False
--------------
ventas_1>ventas_2
True
--------------
In [22]: # Ejercicio 4
# Diferentes tipos de datos tienen distintas propiedades.
In [24]: print('año_1_str')
año_1_str=str(año_1)
print(año_1_str)
print(type(año_1_str))
print('--------------')
print('ventas_1_str')
ventas_1_str=str(ventas_1)
print(ventas_1_str)
print(type(ventas_1_str))
print('--------------')
año_1_str
2017
<class 'str'>
--------------
ventas_1_str
229.23
<class 'str'>
--------------
¡Practiquemos 2!
In [25]: # Ejercicio 5
# Creá una lista llamada "nombres" que contenga los strings "Apple Inc", "Coca-Cola" y "Walmart", en este orden
# Imprimila
# Creá una lista llamada "precios" que contenga las siguientes valuaciones $159.54, $37.13, y $71.17, en este o
# Imprimila
In [ ]: # Ejercicio 6
# Usá "slicing" para obtener un subconjunto con los dos últimos elementos de nombres.
# Usá el "extended slicing" para obtener un subconjunto con los dos primeros elementos de precios.
In [ ]: # Ejercicio 7
# Creá e imprimí una lista anidada que se llame "acciones" y que consista en "nombres" y "precios".
# Usá indexing para obtener la lista de precios.
# Obtené en la lista de acciones el nombre de "Coca-Cola" y luego, por separado, el precio de Walmart, o sea $7
In [50]: print('acciones')
acciones=[nombres,precios]
print(acciones)
print('--------------')
print('acciones_nombre')
print(acciones[0][1])
print('--------------')
print('acciones_precio')
print(acciones[1][2])
print('--------------')
acciones
[['Apple Inc', 'Coca-Cola', 'Walmart'], [159.54, 37.13, 71.17]]
--------------
acciones_nombre
Coca-Cola
--------------
acciones_precio
71.17
--------------
In [ ]: # Ejercicio 8
precios ordenados
[37.13, 71.17, 159.54]
--------------
máximo precio
159.54
--------------
nombres_append
['Apple Inc', 'Coca-Cola', 'Walmart', 'Amazon.com']
--------------
nombres_extend
['Apple Inc', 'Coca-Cola', 'Walmart', 'Amazon.com', 'DowDuPont', 'Alphabet Inc']
--------------
¡Practiquemos 3!
In [ ]: # Ejercicio 9
# Importá numpy as np
# Creá un PER_array dividiendo precios / ganancias. Imprimilo. ¿Qué compañía luce más cara? (solo imprimí esto)
print('precios_array')
precios_array = np.array([170.12, 93.29, 55.28, 145.30, 171.81, 59.50, 100.50])
print(precios_array)
print('--------------')
print('ganancias_array')
ganancias_array = np.array([9.2, 5.31, 2.41, 5.91, 15.42, 2.51, 6.79])
print(precios_array)
print('--------------')
print('precios / ganancias')
PER_array=precios_array/ganancias_array
print(PER_array)
print('--------------')
print('compañía más cara')
PER_array_cara=max(PER_array)
print(PER_array_cara)
print('--------------')
print('subset array')
indexing_array = np.array([0,1,2])
precios_array_subset=precios_array[indexing_array]
print(precios_array_subset)
print('--------------')
precios_array
[170.12 93.29 55.28 145.3 171.81 59.5 100.5 ]
--------------
ganancias_array
[170.12 93.29 55.28 145.3 171.81 59.5 100.5 ]
--------------
precios / ganancias
[18.49130435 17.56873823 22.93775934 24.58544839 11.14202335 23.70517928
14.8011782 ]
--------------
compañía más cara
24.585448392554994
--------------
subset array
[170.12 93.29 55.28]
--------------
In [95]: # Ejercicio 10
# Creá un array de 2 dimensiones con precios y ganancias, en ese orden, y guardalo en acciones_array
# Imprimí el shape y el size de acciones_array
# Imprimé acciones_array_transpuesta
# Extraé la primera columna de acciones_array_transpuesta y asignala a precios_1. Imprimilo.
# Extraé la segunda columna de acciones_array_transpuesta y asignala a ganancias_1. Imprimilo.
In [9]: print('acciones_array')
acciones_array = np.array([precios_array, ganancias_array])
print(acciones_array)
print('--------------')
print('shape acciones_array')
print(acciones_array.shape)
print('--------------')
print('size acciones_array')
print(acciones_array.size)
print('--------------')
print('transpose acciones_array')
acciones_array_transpuesta=np.transpose(acciones_array)
print(acciones_array_transpuesta)
print('--------------')
print('precios_1')
precios_1 = acciones_array_transpuesta[:,0]
print(precios_1)
print('ganancias_1')
ganancias_1 = acciones_array_transpuesta[:,1]
print(ganancias_1)
print('--------------')
print('subset empresa_1')
empresa_1 = acciones_array_transpuesta[0,:]
print(empresa_1)
print('--------------')
#precios_1 = acciones_array_transpuesta[indexing_array]
#print(precios_1)
acciones_array
[[170.12 93.29 55.28 145.3 171.81 59.5 100.5 ]
[ 9.2 5.31 2.41 5.91 15.42 2.51 6.79]]
--------------
shape acciones_array
(2, 7)
--------------
size acciones_array
14
--------------
transpose acciones_array
[[170.12 9.2 ]
[ 93.29 5.31]
[ 55.28 2.41]
[145.3 5.91]
[171.81 15.42]
[ 59.5 2.51]
[100.5 6.79]]
--------------
precios_1
[170.12 93.29 55.28 145.3 171.81 59.5 100.5 ]
ganancias_1
[ 9.2 5.31 2.41 5.91 15.42 2.51 6.79]
--------------
subset empresa_1
[170.12 9.2 ]
--------------
In [10]: # Ejercicio 11
# Creá un vector de números secuenciales del 1 al 7 para identificar a las empresas y asignalo a numeros. Impri
# Creá otro vector de números secuenciales impares entre el 1 y 7 inclusive y asignalo a numeros_imp. Imprimilo
SIN REDONDEO
el promedio de precios es $113.6857142857143
--------------
CON REDONDEO
el promedio de precios es $113.69
--------------
In [29]: # Ejercicio 12
# Encontrá los elementos de precios que superan a la media. Asignalos a bool_array. Imprimilo.
# Hacé un subset de precios usando bool_array y asigná el resultado a sobre_la_media
In [6]: # Ejercicio 13
# Solo después de mostrar el gráfico, agregá las etiquetas "Días" en el eje x y "Cotizaciones, $" en el eje y.
# Poné de título "Cotizaciones a través del tiempo".
# Mostrá el gráfico.
In [64]: # Ejercicio 14
# Graficá cotizacion_1 con rojo y cotizacion_2 con verde manteniendo las etiquetas y títulos. No definas linest
# Scatterplot
# Dibujá un scatterplot con días en el eje x y cotizaciones en el eje y, con marcadores cyan. Agregá el argumen
# Este argumento s controla el tamaño del marcador
# Mostrá el gráfico. ¿Tiene sentido el gráfico que dibujaste? Explicalo
plt.xlabel('Días')
plt.ylabel('Cotizaciones, $')
plt.title(label="Cotizaciones a través del tiempo",fontsize=20,color="green")
plt.show()
print('--------------------------------------------------------------')
plt.scatter(dias,cotizacion, \
color = "cyan",s=0.10)
plt.xlabel('Días')
plt.ylabel('Cotizaciones, $')
plt.title(label="Cotizaciones a través del tiempo",fontsize=20,color="green")
plt.show()
--------------------------------------------------------------
Este Scatter Plot no tiene mucho sentido visto de esta manera, ya que este tipo de grá ficos se utiliza para mo
strar y comparar dos series de datos cuantitativos, de manera de poder identificar si se observa una correlació
n entre ellos y cómo se comporta una variable en función de la otra. En este caso no tiene sentido verificar es
to con un scatter plot, ya que el dato de días es una serie de tiempo y es conveniente utilizar un gráfico de l
íneas en presencia de este tipo de datos. Se verifica que el resultado es el mismo que el que se hubiese obteni
do utilizando un gráfico de líneas.
In [75]: # Ejercicio 15
# Importamos numpy as np
# Dibujá un histograma con esta serie y 100 bins. Mostralo. ¿Es una distribución nomral? Describí la forma.
# Graficá el histograma de accion_1 y accion_2, juntos, con 100 bins y transparencia de 0.4
# Agregá las etiquetas accion_1 y accion_2. No te olvides de mostrar las etiquetas y el gráfico.
# Sacá conclusiones
, label="accion_1")
print("\n")
print("Se observan que los precios de la accion_2 presentan una \
mayor concentración en torno a su media, mientras que los \
precios de la accion_1 muestran una mayor dispersión \
(se comprueba con los cálculos debajo)")
print("\n")
print(F"precio promedio accion_1 ${round(accion_1.mean(),2)}")
print(F"desvío std promedio accion_1 ${round(accion_1.std(),2)}")
print('----------')
print(F"precio promedio accion_2 ${round(accion_2.mean(),2)}")
print(F"desvío std promedio accion_2 ${round(accion_2.std(),2)}")
No se observa una distribución normal, más bien las observaciones se acumulan a la izquierda del gráfico cerca
del 0 y van disminuyendo en cantidad a medida que nos alejamos del cero con mayores precios.
--------------------------------------------------------------
Se observan que los precios de la accion_2 presentan una mayor concentración en torno a su media, mientras que
los precios de la accion_1 muestran una mayor dispersión (se comprueba con los cálculos debajo)