Obține date pentru cele mai mari 3 companii financiare
Un obiect pd.MultiIndex() are mai mult de un identificator per rând. Astfel, poți extrage date pe baza unor criterii aplicate mai multor companii simultan.
Hai să aplicăm această nouă abilitate pentru a obține prețurile acțiunilor celor mai mari companii din sectorul financiar. DataReader, date, pandas ca pd și matplotlib.pyplot ca plt au fost deja importate, la fel și DataFrame-ul listings din exercițiul anterior.
Acest exercițiu face parte din cursul
Importul și gestionarea datelor financiare în Python
Instrucțiuni pentru exercițiu
- Setează
'Stock Symbol'ca index pentrulistingsși atribuie rezultatul lalistings_ss. - Folosește
.loc[]pentru a filtra rândurile în care sectorul companiei este'Finance'și extrage coloana'Market Capitalization'. Aplică.nlargest()pentru a atribui cele mai mari 3 companii după capitalizarea de piață latop_3_companies. - Convertește indexul rezultatului într-o listă și atribuie-o la
top_3_tickers. - Folosește
date()pentru a setastartla 1 ianuarie 2015. - Folosește
date()pentru a setaendla 1 aprilie 2020. - Folosește
DataReader()pentru a obține datele bursiere pentrutop_3_tickersdin'iex', în intervalul de lastartpână laend, și atribuie rezultatul laresult. - Aplică metoda
.stack()pentru a converti DataFrame-ul în format lung, mutând simbolurile bursiere în index. - Selectează
'close'dindata, aplică.unstack()și inspectează DataFrame-ul rezultat, acum în format lat, cu.info().
Exercițiu interactiv practic
Încearcă acest exercițiu completând acest cod de exemplu.
# 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'].____().____()