Tüm borsalarda yıllara göre Teknoloji IPO'ları
listings sözlüğündeki her şirketin IPO yılı 1972 ile 2017 arasındadır. Bu nedenle, bu bağlamda, her sayfadaki 'IPO Year' sütununu dtype'ı float64 olsa bile iyi tanımlanmış bir sıralamaya sahip kategorik bir değişken olarak ele almak uygundur.
Burada üç borsadan gelen verileri birleştirip Teknoloji sektöründeki şirketlerin IPO yıllarının dağılımını çizeceksin. pandas pd takma adıyla ve matplotlib.pyplot plt takma adıyla içe aktarılmıştır ve önceki egzersizden listings sözlüğü çalışma alanında.
Bu egzersiz, kursun bir parçasıdır
Python ile Finansal Verileri İçe Aktarma ve Yönetme
Egzersiz talimatları
- Her borsanın adını içeren
exchangeyineleyici değişkeniyle bir for döngüsü kullan.- Her yinelemede,
listingsiçindekiexchangeanahtarına karşılık gelen DataFrame'iall_listingslistesine ekle.
- Her yinelemede,
- Döngü tamamlandıktan sonra,
all_listingsiçindeki üç DataFrame'i birleştirmek içinpd.concat()kullan ve sonuculisting_data'ya ata. listing_data'yı'Technology'şirketleri için filtrele ve sonucutech_companies'a ata.tech_companiesiçinden'IPO Year'sütununuipo yearsdeğişkenine ata.- Bu veri için, eksik değerleri kaldırmak üzere
.dropna()ve tam sayıya dönüştürmek için.astype()kullan. ipo_yearsüzerinde.value_counts()uygula, yılları artan düzende sırala ve başlığı'Tech IPOs by Year'olan bir çubuk grafik oluştur.xticks'i 45 derece döndür ve sonucu göster.
Uygulamalı etkileşimli egzersiz
Bu egzersizi bu örnek kodu tamamlayarak deneyin.
# 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()