2015-11-03 13 views
5

Pandas serisi 10000 satırlık tek bir alfabe ile doldurulur, A dan Z ye başlar. Ancak, yalnızca A, B için kukla veri çerçeveleri oluşturmak istiyorum ve C, Pandalar get_dummies'u kullanarak. Bunu yapmayı nasıl yaparım?Pandalar - Yalnızca belirli değerler için takma adlar al

Sütundaki tüm satır değerleri için mankenler almak istemiyorum ve ardından sütun sonunda, bir Bellek Hatası'na neden olan diğer yedekli verileri içerdiğinden belirli sütunları seçmek istemiyorum.

+0

Yani df ilk filtrelemek isteyen ya da 'bu değerler için yalnızca get_dummies' istiyorum var? – EdChum

+0

Sadece bu değerler için get_dummies istiyorum. – ExtremistEnigma

+0

Not: Çok fazla bellek problemini 'get_dummies''' sparse = True' parametresiyle çözebilirsiniz. –

cevap

1

bu deneyin:

# create mock dataframe 
df = pd.DataFrame({'alpha':['a','a','b','b','c','e','f','g']}) 

# use replace with a regex to set characters d-z to None 
pd.get_dummies(df.replace({'[^a-c]':None},regex =True)) 

çıkışı:

alpha_a alpha_b  alpha_c 
0 1 0 0 
1 1 0 0 
2 0 1 0 
3 0 1 0 
4 0 0 1 
5 0 0 0 
6 0 0 0 
7 0 0 0 
+0

Kategorik değişkenlerim rastgele dizeler olsaydı, a, b ve c yerine John, Jane ve Mary gibi isimler söylerlerse ne olur? – ExtremistEnigma

+0

hariç tutmak istediğiniz isimlerin listesini kullanabilirsiniz. 'Pd.get_dummies (df.replace ([ 'Tom', 'Ben'], [Yok Yok])) ' – JAB

İlgili konular