ComeçarComece de graça

IPOs de tecnologia por ano em todas as bolsas

Cada empresa no dicionário listings tem um ano de IPO entre 1972 e 2017. Portanto, neste contexto, é adequado considerar a coluna 'IPO Year' de cada planilha como uma variável categórica com uma ordem bem definida, mesmo que seu dtype seja float64.

Aqui você vai combinar dados das três bolsas e plotar a distribuição dos anos de IPO para empresas do setor de Technology. pandas como pd e matplotlib.pyplot como plt já foram importados, e o dicionário listings do exercício anterior está no seu workspace.

Este exercício faz parte do curso

Importing and Managing Financial Data in Python

Ver curso

Instruções do exercício

  • Use um laço for com a variável iteradora exchange que contenha o nome de cada bolsa.
    • Em cada iteração, acrescente o DataFrame correspondente à chave exchange em listings a all_listings.
  • Após concluir o laço, use pd.concat() para combinar os três DataFrames em all_listings e atribua o resultado a listing_data.
  • Filtre listing_data por empresas de 'Technology' e atribua o resultado a tech_companies.
  • Atribua a coluna 'IPO Year' de tech_companies a ipo years.
  • Para esses dados, use .dropna() para remover valores ausentes e .astype() para converter para int.
  • Aplique .value_counts() a ipo_years, ordene os anos em ordem crescente e crie um gráfico de barras com o título 'Tech IPOs by Year'.
  • Gire os xticks em 45 graus e mostre o resultado.

Exercício interativo prático

Experimente este exercício completando este código de exemplo.

# Create lists
exchanges = ['amex', 'nasdaq', 'nyse']
all_listings = []

# Use for loop to create listing_data
for exchange in exchanges:
    all_listings.____(____[____])
    
# Combine DataFrames
listing_data = pd.____(____)

# Select tech companies
tech_companies = listing_data[____.____ == 'Technology']

# Create ipo_years
ipo_years = ____[____]

# Drop missing values and convert to int
ipo_years = ipo_years.____().____(int)

# Count values, sort ascending by year, and create a bar plot
ipo_years.____().plot(kind=____, ____='Tech IPOs by Year')

# Rotate xticks and show result
plt.xticks(____=____)

# Show the plot
plt.show()
Editar e executar o código