ÎncepețiÎncepe gratuit

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

Vezi cursul

Instrucțiuni pentru exercițiu

  • Setează 'Stock Symbol' ca index pentru listings și atribuie rezultatul la listings_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ță la top_3_companies.
  • Convertește indexul rezultatului într-o listă și atribuie-o la top_3_tickers.
  • Folosește date() pentru a seta start la 1 ianuarie 2015.
  • Folosește date() pentru a seta end la 1 aprilie 2020.
  • Folosește DataReader() pentru a obține datele bursiere pentru top_3_tickers din 'iex', în intervalul de la start până la end, și atribuie rezultatul la result.
  • Aplică metoda .stack() pentru a converti DataFrame-ul în format lung, mutând simbolurile bursiere în index.
  • Selectează 'close' din data, 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'].____().____()
Editează și rulează codul