PyPolars ile Pandaları 3 Kat Hızlandırın
PyPolars kitaplığını kullanarak Panda iş akışınızı nasıl hızlandıracağınızı öğrenin.
By Satyam Kumar, Makine Öğrenimi Meraklısı ve Programcı
Fotoğraf Tim Gouw on Unsplash
Pandalar, veri bilimcilerin verilerle oynayabileceği en önemli Python paketlerinden biridir. Pandas kütüphanesi, tonlarca dahili fonksiyonla birlikte geldiği için çoğunlukla veri keşifleri ve görselleştirmeler için kullanılır. Pandalar, işlemlerini CPU'nun tüm çekirdekleri arasında ölçeklendirmediği veya dağıtmadığı için büyük boyutlu veri kümelerini işleyemez.
Hesaplamaları hızlandırmak için CPU'nun tüm çekirdeklerini kullanabilir ve iş akışını hızlandırabilirsiniz. Dask, Vaex, Modin, Pandarallel, PyPolars vb. dahil olmak üzere, CPU'nun birden çok çekirdeğindeki hesaplamaları paralel hale getiren çeşitli açık kaynak kitaplıkları vardır. Bu yazımızda PyPolars kütüphanesinin uygulamasını ve kullanımını tartışacağız ve performansını Pandas kütüphanesi ile karşılaştıracağız.
PyPolars nedir?
PyPolars, Pandalara benzer açık kaynaklı bir Python veri çerçevesi kitaplığıdır. PyPolars, CPU'nun mevcut tüm çekirdeklerini kullanır ve bu nedenle hesaplamaları Pandalardan daha hızlı gerçekleştirir. PyPolars, Pandalarınkine benzer bir API'ye sahiptir. Python sarmalayıcıları ile pas içinde yazılmıştır.
İdeal olarak, veriler Pandalar için çok büyük ve Spark için çok küçük olduğunda PyPolars kullanılır.
PyPolars Nasıl Çalışır?
PyPolars kitaplığında biri Eager API, diğeri Lazy API olmak üzere iki API vardır. Eager API, Pandalarınkine çok benzer ve sonuçlar, Pandalara benzer şekilde yürütme tamamlandıktan hemen sonra üretilir. Tembel API, bir sorgunun yürütülmesi üzerine bir harita veya planın oluşturulduğu Spark'a çok benzer. Ardından yürütme, CPU'nun tüm çekirdeklerinde paralel olarak yürütülür.
(Yazarın Resmi), PyPolars API'leri
PyPolars, temelde Polars kitaplığına bağlanan python gibidir. PyPolars kitaplığının en iyi yanı, geliştiricilerin işini kolaylaştıran Pandas'a API benzerliğidir.
Kurulum:
PyPolars, aşağıdaki komut kullanılarak PyPl'den yüklenebilir:
pip install py-polars
ve kullanarak kitaplığı içe aktarın
import pypolars as pl
Benchmark Zaman Kısıtlamaları:
Gösteriler için 6.4 milyon örneğe sahip büyük boyutlu bir veri seti (~25Gb) kullandım.
(Yazarın Resmi), Pandalar ve Py-Polars temel işlemleri için Benchmark Zaman Numarası
Pandalar ve PyPolars kitaplığını kullanan bazı temel işlemler için yukarıdaki kıyaslama zaman sayıları için, PyPolars'ın Pandalardan neredeyse 2 kat ila 3 kat daha hızlı olduğunu gözlemleyebiliriz.
Artık PyPolars'ın Pandalarınkine çok benzer bir API'si olduğunu biliyoruz, ancak yine de Pandaların tüm işlevlerini kapsamamaktadır. Örneğin, bizde yok .describe()
PyPolars'ta işlev, bunun yerine kullanabiliriz df_pypolars.to_pandas().describe()
Kullanımı:
(Yazar Kodu)
Sonuç:
Bu makalede, uygulaması, kullanımı ve bazı temel işlemler için karşılaştırmalı zaman sayılarının Panda'larla karşılaştırılması dahil olmak üzere PyPolars kitaplığına küçük bir giriş yaptık. PyPolars'ın Pandalarınkine çok benzer şekilde çalıştığını ve PyPolars'ın desteklediği bellek değişmez olduğu için bellek açısından verimli bir kitaplık olduğunu unutmayın.
biri geçebilir belgeleme kütüphane hakkında ayrıntılı bilgi edinmek için. Pandaların işlemlerini paralelleştirebilecek ve süreci hızlandırabilecek çeşitli açık kaynak kitaplıkları vardır. Okumak aşağıda belirtilen makale 4 tür kütüphaneyi bilmek:
Mevcut Panda ekosistemini paralel hale getirebilecek 4 kitaplık
Python iş yükünü bu çerçeveleri kullanarak paralel işleme yoluyla dağıtın
Referanslar:
[1] Polars Belgeleri ve GitHub deposu: https://github.com/ritchie46/polars
Okuduğunuz için teşekkürler
Bio: Satyam Kumar Makine Öğrenimi Meraklısı ve Programcısıdır. satyam yazıyor Veri Bilimi hakkındadır ve AI'da En İyi Yazardır. Teknik becerilerinden ve yeteneklerinden yararlanma fırsatı sağlayan bir organizasyonda zorlu bir kariyer arıyor.
orijinal. İzinle yeniden yayınlandı.
İlgili:
30 Gün İçindeki En Çok Okunan Haberler
Kaynak: https://www.kdnuggets.com/2021/05/pandas-faster-pypolars.html
- "
- &
- AI
- algoritmalar
- Türkiye
- arasında
- api
- API'ler
- etrafında
- göre
- Oto
- kıyaslama
- İYİ
- Kitaplar
- Kariyer
- kariyer
- kod
- veri
- veri bilimi
- veri bilimcisi
- veri goruntuleme
- anlaşma
- geliştiriciler
- mühendis
- vb
- infaz
- GitHub
- rehberlik
- Ne kadar
- Nasıl Yapılır
- HTTPS
- görüntü
- Dahil olmak üzere
- IT
- büyük
- ÖĞRENİN
- öğrenme
- Kütüphane
- makine öğrenme
- harita
- orta
- Microsoft
- Microsoft Research
- milyon
- model
- sayılar
- Operasyon
- Fırsat
- Diğer
- performans
- Üretilmiş
- Python
- Okuma
- araştırma
- Sonuçlar
- Rust
- ölçek
- Bilim
- beden
- becerileri
- küçük
- hız
- SQL
- başlama
- hikayeler
- Teknik
- zaman
- Ton
- üst
- görüntüleme
- iş akışı
- çalışır
- yazar
- X