BaşlayınÜcretsiz başlayın

Birden çok Excel çalışma sayfasından verileri yüklemeyi ve birleştirmeyi otomatikleştir

Artık listings.xlsx dosyasındaki üç borsanın liste bilgilerini bir for döngüsü yazarak içe aktarma sürecini otomatikleştirmeye hazırsın. Şunları yapacaksın:

  1. Bir pd.ExcelFile() nesnesinin sheet_names özniteliğini kullanarak sayfa adlarını al.
  2. Boş bir liste oluştur.
  3. Bu sayfa adları üzerinde dönen bir for döngüsü yaz: Excel dosyasındaki ilgili sayfadan veriyi bir değişkene oku. İstersen bir referans sütunu ekle. Her yinelemede bu değişkenin içeriğini listeye ekle.
  4. Listedeki DataFrame'leri birleştir.

Her zamanki gibi, yardıma ihtiyaç duyarsan bu bölümdeki önceki egzersizlere veya pandas dokümantasyonuna başvurabilirsin. pandas, pd takma adıyla içe aktarılmıştır.

Bu egzersiz, kursun bir parçasıdır

Python ile Finansal Verileri İçe Aktarma ve Yönetme

Kursa Göz Atın

Egzersiz talimatları

  • listings.xlsx dosyasını kullanarak bir pd.ExcelFile() nesnesi oluştur ve xls değişkenine ata.
  • xls nesnesinin .sheet_names özniteliğinden sayfa adlarını al ve exchanges değişkenine ata.
  • Boş bir liste oluştur ve listings değişkenine ata.
  • exchange yineleyici değişkeniyle bir for döngüsü kullanarak exchanges üzerinde dön. Her yinelemede:
    • Eksik değerleri ele almak için veri kaynağı olarak xls, sheet_name argümanı olarak exchange ve na_values için 'n/a' kullanarak pd.read_excel() uygula. Sonucu listing değişkenine ata.
    • listing içinde değeri exchange (yineleyici değişken) olan 'Exchange' adlı yeni bir sütun oluştur.
    • Ortaya çıkan listing DataFrame'ini listings listesine ekle.
  • listings içeriğini birleştirmek için pd.concat() kullan ve sonucu listing_data değişkenine ata.
  • .info() kullanarak listing_data içeriğini incele.

Uygulamalı etkileşimli egzersiz

Bu egzersizi bu örnek kodu tamamlayarak deneyin.

# Create the pd.ExcelFile() object
xls = ____

# Extract the sheet names from xls
exchanges = ____.____

# Create an empty list: listings


# Import the data
for exchange in exchanges:
    listing = pd.____(____, sheet_name=____, na_values='n/a')
    listing['Exchange'] = ____
    listings.____(____)

# Concatenate the listings: listing_data
listing_data = pd.____(____)

# Inspect the results
listing_data.info()
Kodu Düzenle ve Çalıştır