Corise — Veri Bilimi için Python

Dec 12 2022
Proje 1 — Airbnb Corise için bir haftalık projem için Python'da kod yazmaya başladım. Farklı Numpy işlevlerini uygularken dili inanılmaz derecede çok yönlü ve öğrenmesi kolay buldum.

Proje 1 — Airbnb

Corise için bir haftalık projem için Python'da kod yazmaya başladım. Farklı Numpy işlevlerini uygularken dili inanılmaz derecede çok yönlü ve öğrenmesi kolay buldum. Numpy kullanmanın kodumu kolaylaştırdığını ve algoritmalar üzerinde daha fazla zaman harcamamı sağlayan daha özlü bir son ürün yarattığını gördüm. Projemiz için Google'ın işbirliği alanından çıktık. Ancak, ortak bir alanda bilgisayar kullanmanın bazen dikkat dağıtıcı olabildiğini fark ettim. Sonunda tüm ekran paylaşım ayarlarımı özel olarak değiştirdim, bu benim için iyi çalıştı çünkü diğer insanların ne yaptığından çok kodu doğru yapmaya odaklandım. Projeye başlamadan önce çok az programlama deneyimim vardı, bu yüzden Numpy kullanan basit bir program oluşturma konusunda çok gergindim.

Python ve Numpy'ye Başlarken

Numpy'yi kullanmaya başlamak için temizlemek üzere bir Airbnb veri seti indirdik. Veri seti, Amsterdam'daki Airbnb kullanıcıları tarafından toplanan kiralık mülklerin konumu hakkında bilgilerden oluşuyordu. Veri setini indirdiğimde bunun büyük bir dosya olduğunu görünce şaşırmadım. Veri seti yüklendikten sonra sıra onu temizlemeye geldi. Dosyanın okunmasını zorlaştıran üst bilgilerden, alt bilgilerden, yinelenen kimliklerden ve diğer gereksiz dosyalardan kurtulmak istedik.

  • İlk sütunu ve satırı kaldırın.
  • İlk dört sütunu yazdırın.
  • 'matris'i kullanarak matrisi 90 derece kaydırın. devrik' işlevi.
  • İlk 5 satırı yazdırın.
  • Başlık satırını ve sütununu kaldırın ve son 3 sütunu yazdırın.

Ardından, yukarıdaki adımların her birinin sonuçlarını görüntülemek için bir "yazdır" ifadesi ekledik.

Numpy'de Para Birimi Dönüştürme

Artık verileri temizlediğimize göre, onu istediğimiz para birimine dönüştürmek için 'currency_converter' kodunu kullanmak istedik. İlk olarak, ' from minute_converter import CurrencyConverter' kullanarak kitaplığı içe aktardım. Bu işlem tamamlandıktan sonra kullanmaya karar verdiğim para birimi “GBP” idi ve para birimini 'USD'den 'GBP'ye çevirdim.

  • Kullanılan kod şuydu:
  • gbp_rate = cc.convert(1, 'USD', 'GBP')
  • print(gbp_rate) …… ve ardından kuru hesaplamak için dolar sütununu kullanılan para birimiyle (yani: GBP) çarpma talimatları.)
  • print(matrix[:, 1]) …… ardından matristeki dolarların değerini yazdırma talimatı gelir.
  • # Dolar sütununu enflasyon yüzdesiyle çarpın (1.00 + enflasyon)
  • matris[:, 1] = matris[:, 1] * 1.07
  • print(matrix[:, 1]) …… ardından enflasyon yüzdesi ile çarpıldıktan sonra doların değerini matriste yazdırma talimatı gelir.
  • Bu bölüm oldukça basit ve hızlıydı. İndirdiğimiz veri setinden enlem ve boylam mesafesini hesaplamak için bir döngü oluşturduk. Bu bölüm oldukça basit ve hızlıydı. Projenin bu kısmı için, boylam ve enlem vektöründeki her öğe arasında döngü kurabilen bir işlev yarattık. Oluşturulan işlev "mesafe" olarak adlandırıldı ve iki argüman aldı: enlem ve boylam. Daha sonra veri kümesindeki her sütundaki değerler arasında geçiş yapmak için bu kod satırını kullandım.

    timeit işlevinde kullanılan kod aşağıda gösterilmiştir:

    # Bir Python işlevinin (yarı) vektörleştirilmiş bir şekilde kullanılmasına izin ver>> conv_to_meters = np.vectorize(from_location_to_airbnb_listing_in_meters)

    # İşlevi uygulayın, zamanı kullanın>>>> conv_to_meters(enlem, boylam, matris[:, 2], matris[:, 3])

    Streamlit'te bir uygulama oluşturma ve bunu GitHub'da dağıtma

    Streamlit platformunu kullanarak, Airbnb Verilerini temsil eden yukarıdaki kodu görüntülemek için portföyümüz için bir uygulama oluşturduk . Bunu yaparken, ham verileri barındıran GitHub'da bir havuz, verilerin görüntülendiği akıcı uygulama ve tüm kod portföyünü barındıran web sayfası oluşturabildik. Buradan uygulamayı herkese açık hale getirebiliyorum, böylece kullanıcılar yaratılanları ziyaret edebilir. Katkıda bulunmayı seçerlerse, projeyi kendi GitHub hesaplarına çatallayabilirler ve oradan, depoda yaptıkları değişiklikleri ve güncellemeleri aktarabilirler veya orijinal hesaplarını orijinal havuza bağlı tuttukları sürece istedikleri gibi ayarlamalar yapabilirler. .

    Sonuç

    Genel olarak, bu proje bana Numpy'nin temelini öğretti ve bu programı ve R gibi diğer veri analiz yazılımlarını kullanarak verileri manipüle etme ve analiz etme söz konusu olduğunda sonsuz olasılıkları gösterdi. herhangi bir bilim alanında başarı için kritik öneme sahiptir. Ayrıca, bu kadar çeşitli kaynaklardan gelen verileri manipüle etme yeteneğine sahip olmanın, dünyanın nasıl çalıştığına dair daha iyi bir anlayış sağladığına inanıyorum. Bu hafta benim de çok heyecanlandığım Pandalar yolculuğumuza başlıyoruz. Bu araçların, verilerimizi yararlı bilgiler çıkarabileceğimiz şekilde yapılandırmamıza yardımcı olacağını düşünüyorum.

    Medium , Twitter , LinkedIn ve Github'da beni takip etmekten çekinmeyin . Veri yolculuğum sırasında burada ve diğer sosyal hesaplarımda daha fazla materyal paylaşacağım.