2017-05-31 42 views

回答

1

您可以使用:

df = pd.DataFrame({'A':[1,2,3,4,5,6,6,5,4]}).astype(str) 
print (df) 
    A 
0 1 
1 2 
2 3 
3 4 
4 5 
5 6 
6 6 
7 5 
8 4 

首先得到下面treshold所有值與value_countsboolean indexingdict comprehension添加像0相同標量值。最後replace

tresh = 2 
s = df['A'].value_counts() 
d = {x:0 for x in s[s < tresh].index} 
print (d) 
{'1': 0, '3': 0, '2': 0} 

df = df.replace(d) 
print (df) 
    A 
0 0 
1 0 
2 0 
3 4 
4 5 
5 6 
6 6 
7 5 
8 4 

print (pd.get_dummies(df, prefix='', prefix_sep='')) 
    0 4 5 6 
0 1 0 0 0 
1 1 0 0 0 
2 1 0 0 0 
3 0 1 0 0 
4 0 0 1 0 
5 0 0 0 1 
6 0 0 0 1 
7 0 0 1 0 
8 0 1 0 0 
+0

適合我的情況!謝謝 –

+0

很高興能幫助,祝你好運! – jezrael

相關問題