Pandalar: bir sözlük kullanarak nan değerleri nasıl doldurulur


Pandas DataFrame’in bir sütunundaki NaN değerlerini başka bir sütundaki değerlere göre değiştirmek için fillna() işlevini bir sözlükle kullanabilirsiniz.

Bunu yapmak için aşağıdaki temel sözdizimini kullanabilirsiniz:

 #define dictionary
dict = {' A ': 5 , ' B ': 10 , ' C ': 15 , ' D ': 20 }

#replace values in col2 based on dictionary values in col1
df[' col2 '] = df[' col2 ']. fillna (df[' col1 ']. map (dict))

Aşağıdaki örnek, bu sözdiziminin pratikte nasıl kullanılacağını gösterir.

Örnek: Pandalar’daki NaN değerlerini bir sözlük kullanarak doldurun

Çeşitli perakende mağazalarında yapılan satışlarla ilgili bilgileri içeren aşağıdaki pandalar DataFrame’e sahip olduğumuzu varsayalım:

 import pandas as pd
import numpy as np

#createDataFrame
df = pd. DataFrame ({' store ': ['A', 'A', 'B', 'C', 'D', 'C', 'B', 'D'],
                   ' sales ': [12, np.nan, 30, np.nan, 24, np.nan, np.nan, 13]})

#view DataFrame
print (df)

  blind sales
0 to 12.0
1 A NaN
2 B 30.0
3 C NaN
4 D 24.0
5CNaN
6BNaN
7 D 13.0

Satış sütununda birden fazla NaN değerinin bulunduğunu unutmayın.

Diyelim ki bu NaN’leri mağaza sütunundaki belirli değerlere karşılık gelen değerleri kullanarak satış sütununa doldurmak istiyoruz.

Bunu yapmak için aşağıdaki sözdizimini kullanabiliriz:

 #define dictionary
dict = {' A ': 5 , ' B ': 10 , ' C ': 15 , ' D ': 20 }

#replace values in sales column based on dictionary values in store column
df[' sales '] = df[' sales ']. fillna (df[' store ']. map (dict))

#view updated DataFrame
print (df)

  blind sales
0 to 12.0
1 A 5.0
2 B 30.0
3C 15.0
4 D 24.0
5C 15.0
6 B 10.0
7 D 13.0

Satış sütununda aşağıdaki değişiklikleri yapmak için bir sözlük kullandık:

  • Mağaza A ise Sales’deki NaN’yi 5 değeriyle değiştirin.
  • Mağaza B ise, satışlardaki NaN’yi 10 değeriyle değiştirin.
  • Mağaza C ise, satışlardaki NaN’yi 15 değeriyle değiştirin.
  • Mağaza D ise, sales’teki NaN’yi 20 değeriyle değiştirin.

fillna() işlevine ilişkin çevrimiçi belgelerin tamamını 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:

Pandalarda eksik değerler nasıl sayılır?
Pandalar’da NaN değerlerine sahip satırlar nasıl silinir
Pandalarda belirli bir değer içeren satırlar nasıl silinir

Yorum ekle

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