Obtén datos de las 3 mayores empresas financieras
Un objeto pd.MultiIndex() tiene más de un identificador por fila. Esto te permite obtener datos según criterios para varias empresas a la vez.
Vamos a aplicar esta nueva habilidad para obtener los precios de las mayores empresas del sector financiero. Ya se han importado DataReader, date, pandas como pd y matplotlib.pyplot como plt, además del DataFrame listings del ejercicio anterior.
Este ejercicio forma parte del curso
Importación y gestión de datos financieros en Python
Instrucciones del ejercicio
- Establece
'Stock Symbol'como índice delistings, asignándolo alistings_ss. - Usa
.loc[]para filtrar las filas donde el sector de la empresa sea'Finance'y extrae la columna'Market Capitalization'. Aplica.nlargest()para asignar atop_3_companieslas 3 empresas con mayor capitalización bursátil. - Convierte el índice del resultado en una lista y asígnalo a
top_3_tickers. - Usa
date()para establecerstarten el 1 de enero de 2015. - Usa
date()para establecerenden el 1 de abril de 2020. - Usa
DataReader()para obtener los datos bursátiles detop_3_tickersdesde'iex'desdestarthastaendy asígnalos aresult. - Aplica el método
.stack()para convertir elDataFramea formato largo moviendo los tickers al índice. - Selecciona
'close'dedata, aplica.unstack()e inspecciona elDataFrameresultante, ahora en formato ancho, con.info().
Ejercicio interactivo práctico
Prueba este ejercicio y completa el código de muestra.
# Set Stock Symbol as the index
listings_ss = listings.____
# Get ticker of 3 largest finance companies
top_3_companies = listings_ss.loc[____].____(n=____)
# Convert index to list
top_3_tickers = top_3_companies.____.____()
# Set start date
start = ____
# Set end date
end = ____
# Import stock data
result = ____
# Apply stack method
data = ____
# Unstack and inspect result
data['close'].____().____()