Veri Bilimcileri için Temel 5 Panda İşlevi [222]
Yayınlanan: 2021-01-02Python ile Veri Bilimi ve Veri Analizi söz konusu olduğunda Pandalar açıkça en çok kullanılan ve sevilen kütüphanelerden biridir. Onu özel yapan nedir? Bu eğitimde, Panda'ları bir Veri Bilimcisi'nin araç setinde son derece kullanışlı bir araç haline getiren bu tür 5 işlevin üzerinden geçeceğiz.
Bu öğreticinin sonunda, Pandalarda aşağıdaki işlevler ve bunları uygulamalarınız için nasıl kullanacağınız hakkında bilgi sahibi olacaksınız:
- değer_sayısı
- grupça
- loc ve iloc
- benzersiz ve benzersiz
- Kes ve qcut
İçindekiler
Veri Bilimciler İçin En İyi Panda İşlevleri
1. değer_sayısı()
Pandaların value_counts() işlevi, bir veri çerçevesinin sütunlarındaki tüm benzersiz öğelerin sayısını göstermek için kullanılır.
Profesyonel İpucu: Göstermek için Titanik Veri Kümesini kullanacağım.
Şimdi, Embarked özelliğindeki sınıfların sayısını bulmak için value_counts işlevini çağırabiliriz:
tren[ 'Giriş' ].value_counts() |
#Çıktı: S 644 C168 _ S 77 |
Ayrıca, bu sayılar pek bir anlam ifade etmiyorsa, bunun yerine yüzdelerini görüntüleyebilirsiniz:
tren[ 'Girildi' ].value_counts(normalize= True ) |
#Çıktı: S 0.724409 0,188976 _ 0,086614 _ |
Ayrıca, value_counts, NaN'yi veya varsayılan olarak kontrol edilmesi çok önemli olan eksik değerleri dikkate almaz. Bunu yapmak için dropna parametresini false olarak ayarlayabilirsiniz.
tren[ 'Girildi' ].value_counts(dropna= False ) |
#Çıktı: S 644 C168 _ S 77 NaN 2 |
2. group_by()
Pandas group_by ile, verilerdeki kalıpları ve ayrıntıları görüntüleyebilmek için veri çerçevemizi belirli sütunlara bölebilir ve gruplayabiliriz. Group_by 3 ana adımı içerir: bölme, uygulama ve birleştirme.
train.groupby( 'Seks' ).mean() |
Çıktı:
Gördüğünüz gibi, veri çerçevesini 'cinsiyet' özelliğine göre grupladık ve araçları kullanarak topladık.
Pandaların yerleşik görselleştirmesini kullanarak da çizebilirsiniz:
df.groupby( 'Sex' ).sum().plot(tür= 'bar' ) |
Hiyerarşik bir bölme için birden fazla özellik kullanarak da gruplayabiliriz.
df.groupby([ 'Sex' , 'Hayatta kaldı' ] )[ 'Hayatta kaldı' ].count() |
Mutlaka Okuyun: Pandalar Mülakat Soruları
3. konum ve iloc
Pandalarda indeksleme en temel işlemlerden biridir ve bunu yapmanın en iyi yolu loc veya iloc kullanmaktır. "Loc" konum anlamına gelir ve "i" dizinlenmiş konum anlamına gelir. Başka bir deyişle, sütunların/satırların adlarını veya etiketlerini kullanarak bir veri çerçevesini dizine eklemek istediğinizde, loc'u kullanırsınız. Konumları kullanarak sütunları veya satırları indekslemek istediğinizde, iloc işlevini kullanırsınız. Önce loc'u kontrol edelim .
tren.loc[ 2 , 'seks' ] |
Yukarıdaki işlem bize 2. satır dizini ve 'sex' sütununun öğesini verir. Benzer şekilde, cinsiyet sütununun tüm değerlerine ihtiyacınız olsaydı, şunları yapardınız:
tren.loc[:, 'seks' ] |
Ayrıca, aşağıdakiler gibi birden çok sütunu filtreleyebilirsiniz:
train.loc[:, 'seks' , 'Görev Yapıldı' ] |
Ayrıca, aşağıdaki gibi loc içindeki boole koşullarını kullanarak da filtre uygulayabilirsiniz:
tren.loc[tren.yaş >= 25 ] |
Yalnızca belirli satırları görüntülemek için, loc kullanarak veri çerçevesini dilimleyebilirsiniz:
tren.loc[ 100 : 200 ] |
Ayrıca, veri çerçevesini sütun ekseninde şu şekilde dilimleyebilirsiniz:
train.loc[:, 'seks' : 'ücret' ] |
Yukarıdaki işlem, tüm satırlar için veri çerçevesini 'sex' sütunundan 'ücret'e bölecektir.
Şimdi iloc'a geçelim. iloc yalnızca dizin numaralarını veya konumları kullanarak dizin oluşturur. Veri çerçevelerini aşağıdaki gibi dilimleyebilirsiniz:
tren.iloc[ 100 : 200 , 2 : 9 ] |
Yukarıdaki işlemler, 100'den 199'a kadar olan satırları ve 2'den 8'e kadar olan sütunları dilimleyecektir. Benzer şekilde, verilerinizi yatay olarak bölmek isterseniz, şunları yapabilirsiniz:
tren.iloc[: 300 , :] |
4. benzersiz() ve benzersiz()
Pandas unique, herhangi bir özellikten tüm benzersiz değerleri almak için kullanılır. Bu, çoğunlukla verilerdeki kategorik özelliklerdeki kategorileri elde etmek için kullanılır. Unique, NaN'ler dahil tüm benzersiz değerleri gösterir. Bunu farklı bir benzersiz değer olarak ele alır. Hadi bir bakalım:
tren[ 'seks' ].benzersiz() |
#Çıktı: [ 'kadın' , 'erkek' ] |
Gördüğümüz gibi, bize 'seks' özelliğinde benzersiz değerler veriyor.
Benzer şekilde, bazı özelliklerde çok sayıda benzersiz değer olabileceğinden, benzersiz değerlerin sayısını da kontrol edebilirsiniz.

tren[ 'seks' ].nunique() |
#Çıktı: 2 |
Ancak, nunique() öğesinin NaN'leri benzersiz değerler olarak kabul etmediğini unutmamalısınız. Verilerinizde herhangi bir NaN varsa, o zaman Pandaların size NaN'ler de dahil olmak üzere sayı verdiğinden emin olmak için dropna parametresini False olarak geçirmeniz gerekir.
tren[ 'seks' ].nunique(dropna= False ) |
#Çıktı: 3 |
5. kes() ve qcut()
Pandas cut, özellikleri ayrıklaştırmak için aralıklardaki değerleri bindirmek için kullanılır. Hadi onun içine dalalım. Binning, sayısal veya sürekli bir özelliği, sürekli değerlerin aralıklarına dayalı olarak ayrı bir değerler kümesine dönüştürmek anlamına gelir. Bu, veri noktasının hangi aralığa düştüğüne bağlı olarak eğilimleri görmek istediğinizde kullanışlı olur.
Bunu küçük bir örnekle anlayalım.
Diyelim ki 0-100 arası 7 çocuk için puanımız var. Artık her çocuğun işaretlerini belirli bir “kutuya” atayabiliriz.
df = pd.Dataframe(veri= { 'Ad' : [ 'Ck' ' Ron' ' Mat' ' Josh' ' Tim' ' SypherPK' ' Çiy' ' Vin' ], 'İşaretler' :[ 37 , 91 , 66 , 42 , 99 , 81 , 45, 71 ] }) df[ 'marks_bin' ] = pd.cut(df[ 'İşaretler' ], bins=[ 0 , 50 , 70 , 100 ], etiketler=[ 1 , 2 , 3 ]) |
Ardından çıktıyı yeni bir özellik olarak ekleyebiliriz ve İşaretler özelliği bırakılabilir. Yeni veri çerçevesi şuna benzer:
#Çıktı: İsim İşaretleri mark_bin 0 Sk 37 1 1 Ron 91 3 2 Mat 66 2 3 Josh 42 1 4 Tim 99 3 5 SypherPK 81 3 6 Çiğ 45 1 7 Vin 71 3 |
Yani bins = [ 0 , 50 , 70 , 100 ] dediğimde, 3 aralık olduğu anlamına gelir:
bin 1 için 0 ila 50,
kutu 2 için 51'den 70'e ve
71 ila 100, kutu 3'e ait.
Yani, şimdi özelliğimiz işaretleri değil, o öğrenci için işaretlerin bulunduğu aralığı veya kutuyu içeriyor.
cut()'a benzer şekilde, Pandalar da qcut() adlı kardeş işlevini sunar . Pandas qcut niceliklerin sayısını alır ve veri dağıtımını temel alarak veri noktalarını her bir kutuya böler. Bu nedenle, yukarıdaki kesme işlevini qcut olarak değiştirebiliriz:
df[ 'marks_bin' ] = pd.qcut(df[ 'İşaretler' ], q= 3 , etiketler=[ 1 , 2 , 3 ]) |
Yukarıdaki işlemde, Pandalara unsuru 3 eşit parçaya ayırmasını ve onlara etiketleri atamasını söylüyoruz. Çıktı şu şekilde gelir:
İsim İşaretleri mark_bin 0 Sk 37 1 1 Ron 91 3 2 Mat 66 2 3 Josh 42 1 4 Tim 99 3 5 SypherPK 81 3 6 Çiğ 45 1 7 Vin 71 2 |
Son değerin 3'ten 2'ye nasıl değiştiğine dikkat edin.
Ayrıca Okuyun: Pandas Dataframe Astype
Gitmeden önce
En çok kullanılan Panda işlevlerini gördük. Ancak önemli olan sadece bunlar değil ve sizi Pandaların en çok kullanılan işlevleri hakkında daha fazla bilgi edinmeye teşvik ediyoruz. Pandaların sahip olduğu tüm işlevleri değil de sadece birkaçını kullanabileceğiniz için bu iyi ve verimli bir yaklaşımdır.
Dünyanın en iyi Üniversitelerinden veri bilimi derslerini öğrenin . Kariyerinizi hızlandırmak için Yönetici PG Programları, Gelişmiş Sertifika Programları veya Yüksek Lisans Programları kazanın.
Pandalar kütüphanesi neden bu kadar popüler?
Bu kütüphane gerçekten de veri bilimcileri ve veri analistleri arasında oldukça popülerdir. Bunun nedeni, çok sayıda dosya biçimini büyük ölçüde desteklemesi ve çıkarılan verileri işlemek için zengin bir özellik koleksiyonudur. NumPy gibi diğer kütüphaneler ve paketlerle kolayca entegre olabilir.
Bu güçlü kitaplık, büyük veri kümelerini esnek bir şekilde işlemek için çeşitli yararlı işlevler sağlar. Bir kez ustalaştıktan sonra, birkaç satır kodla harika görevleri kolayca başarabilirsiniz.
Birleştirme işlevi nedir ve neden kullanılır?
Birleştirme işlevi, 2 veri çerçevesinin birden çok satırını veya sütununu birleştirmek için kullanılan Pandas veri çerçevesinin özel bir işlevidir. Yüksek bellekli bir birleştirme işlemidir ve ilişkisel veritabanlarına benzer. Ortak sütundaki veri çerçevelerini birleştirmek için on = Column Name öğesini kullanabilirsiniz.
Sol veya sağ veri çerçevesindeki sütunları anahtar olarak kullanarak tabloları hizalamak için left_on = Column Name veya right_on = Column Name'i güncelleyebilirsiniz.
Pandas kütüphanesi dışında, veri bilimi için diğer Python kütüphaneleri nelerdir?
Pandas kütüphanesinin dışında, veri bilimi için en iyi kütüphanelerden biri olarak kabul edilen bir grup Python kütüphanesi vardır. Bunlara PySpark, TensorFlow, Matplotlib, Scikit Learn, SciPy ve çok daha fazlası dahildir. Her biri benzersiz ve şaşırtıcı özellikleri ve işlevleri nedeniyle yaygın olarak kullanılmaktadır.
Her kütüphanenin kendi önemi vardır, tıpkı SciKit Learn'ün istatistiksel verilerle uğraşmanız gerektiğinde daha sık kullanılması gibi. Verileri analiz etmenin yanı sıra, bu harika kitaplıkların sağladığı işlevleri kullanarak gösterge tabloları ve görsel raporlar da oluşturabilirsiniz.