Pandas, veri manipülasyonu ve analizi için güçlü bir Python kütüphanesidir. Yaygın bir görev, bir DataFrame sütunundan benzersiz değerleri ayıklamak ve ardından bunları sıralamaktır. Bu makale, bunu başarmak için iki verimli yöntemi ele almaktadır.
İçerik Tablosu
unique()
Metoduyla Benzersiz Değerleri Ayıklamadrop_duplicates()
Metoduyla Benzersiz Değerleri Ayıklama- Benzersiz Değerleri Sıralama
unique()
Metoduyla Benzersiz Değerleri Ayıklama
unique()
metodu, bir Pandas Serisinden (tek bir sütun) benzersiz değerleri elde etmenin özlü bir yolunu sağlar. Orijinal sıralarını koruyarak yalnızca benzersiz öğeleri içeren bir NumPy dizisi döndürür.
import pandas as pd
data = {'col1': ['A', 'B', 'A', 'C', 'B', 'D'],
'col2': [1, 2, 1, 3, 2, 4]}
df = pd.DataFrame(data)
unique_values = df['col1'].unique()
print(unique_values) # Çıktı: ['A' 'B' 'C' 'D']
Bu kod, bir örnek DataFrame oluşturur ve ardından ‘col1’ sütununda unique()
kullanır. Çıktı, ilk görünüm sıralarında benzersiz değerleri gösteren bir NumPy dizisidir.
drop_duplicates()
Metoduyla Benzersiz Değerleri Ayıklama
drop_duplicates()
metodu, özellikle birden çok sütunla çalışırken daha fazla esneklik sunar. Esas olarak yinelenen satırları kaldırmak için kullanılırken, tek bir sütundan benzersiz değerleri verimli bir şekilde ayıklayabilir.
import pandas as pd
data = {'col1': ['A', 'B', 'A', 'C', 'B', 'D'],
'col2': [1, 2, 1, 3, 2, 4]}
df = pd.DataFrame(data)
unique_values = df['col1'].drop_duplicates().values
print(unique_values) # Çıktı: ['A' 'B' 'C' 'D']
Bu örnek, drop_duplicates()
‘ı doğrudan ‘col1’ Serisine uygular. .values
özniteliği sonucu bir NumPy dizisine dönüştürür. Benzersiz değerlerin sırası, DataFrame’deki ilk görünümünü yansıtır.
Benzersiz Değerleri Sıralama
Yukarıdaki her iki yöntem de benzersiz değerleri döndürür, ancak mutlaka sıralı olarak değil. Sıralamak için NumPy’nin sort()
fonksiyonunu veya Pandas’ın sort_values()
metodunu kullanın.
import pandas as pd
import numpy as np
data = {'col1': ['A', 'B', 'A', 'C', 'B', 'D'],
'col2': [1, 2, 1, 3, 2, 4]}
df = pd.DataFrame(data)
# unique() ve sort() kullanarak
unique_values = np.sort(df['col1'].unique())
print(unique_values) # Çıktı: ['A' 'B' 'C' 'D']
# drop_duplicates() ve sort_values() kullanarak
unique_values = df['col1'].drop_duplicates().sort_values().values
print(unique_values) # Çıktı: ['A' 'B' 'C' 'D']
Bu, her iki yaklaşımı kullanarak sıralamayı göstermektedir. np.sort()
, unique()
‘den gelen NumPy dizisinde çalışırken, sort_values()
, drop_duplicates()
‘den gelen Pandas Serisinde kullanılır. Her ikisi de sıralanmış bir dizi verir. sort_values()
ile azalan sıra için ascending=False
kullanın.
Özetle, hem unique()
hem de drop_duplicates()
benzersiz değerleri verimli bir şekilde ayıklar. En uygun seçim, özel ihtiyaçlarınıza ve tek veya çoklu sütunlarla çalışıp çalışmadığınıza bağlıdır. İstediğiniz sıraya göre sonuçları uygun yöntemi kullanarak sıralamayı unutmayın.