Pandalar: dize uzunluğuna göre satırlar nasıl filtrelenir


Bir pandas DataFrame’de belirli uzunlukta bir dize içeren satırları filtrelemek için aşağıdaki yöntemleri kullanabilirsiniz:

Yöntem 1: Bir Sütundaki Dize Uzunluğuna Göre Satırları Filtrele

 #filter rows where col1 has a string length of 5
df. loc [df[' col1 ']. str . len () == 5 ]

Yöntem 2: Birden fazla sütunun dize uzunluğuna göre satırları filtreleyin

 #filter rows where col1 has string length of 5 and col2 has string length of 7
df. loc [(df[' col1 ']. str . len () == 5 ) & (df[' col2 ']. str . len () == 7 )]

Aşağıdaki örnekler, her yöntemin pratikte aşağıdaki pandalar DataFrame ile nasıl kullanılacağını gösterir:

 import pandas as pd

#createDataFrame
df = pd. DataFrame ({' conf ': ['East', 'East', 'North', 'West', 'North', 'South'],
                   ' pos ': ['Guard', 'Guard', 'Forward', 'Center', 'Center', 'Forward'],
                   ' points ': [5, 7, 7, 9, 12, 9]})

#view DataFrame
print (df)

    conf pos points
0 East Guard 5
1 East Guard 7
2 North Forward 7
3 West Center 9
4 North Center 12
5 South Forward 9

Örnek 1: Bir sütundaki dize uzunluğuna göre satırları filtreleme

Aşağıdaki kod, conf sütununda dize uzunluğu 5 olan DataFrame’deki satırların nasıl filtreleneceğini gösterir:

 #filter rows where conf has a string length of 5
df. loc [df[' conf ']. str . len () == 5 ]

	conf pos points
2 North Forward 7
4 North Center 12
5 South Forward 9

Yalnızca conf sütununun dize uzunluğu 5 olan satırlar döndürülür.

Conf sütununda iki farklı stringin bu kriteri karşıladığını görebiliriz:

  • “Kuzey”
  • “Güney”

Her iki dizenin uzunluğu 5’tir .

Örnek 2: Satırları birden çok sütunun dize uzunluğuna göre filtreleme

Aşağıdaki kod, conf sütununda dize uzunluğu 5 ve pos sütununda dize uzunluğu 7 olan DataFrame’deki satırların nasıl filtreleneceğini gösterir:

 #filter rows where conf has string length of 5 and pos has string length of 7
df. loc [(df[' conf ']. str . len () == 5 ) & (df[' pos ']. str . len () == 7 )]

        conf pos points
2 North Forward 7
5 South Forward 9

Yalnızca conf sütununun dize uzunluğunun 5 olduğu ve konum sütununun kuvvet uzunluğunun 7 olduğu satırlar döndürülür.

Not : Pandas’taki str.len() işlevinin tam belgelerini burada bulabilirsiniz.

Ek kaynaklar

Aşağıdaki eğitimlerde pandalarda diğer yaygın işlemlerin nasıl gerçekleştirileceği açıklanmaktadır:

Pandas DataFrame’deki satırlar duruma göre nasıl silinir
Pandas DataFrame’i birden çok koşulda filtreleme
Pandas DataFrame’de “DEĞİL” filtresi nasıl kullanılır?

Yorum ekle

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir