2016-03-02 144 views
2

給出一個數據幀是這樣的:轉換熊貓系列成整數

'John', 0.25 
'Mary', 0.2 
'Adam', 0.1 
'Andrew', 0.6 

我想產生對某個系列中的每類唯一的整數。例如,在上述情況下,輸出可能是這樣的

0, 0.25 
1, 0.2 
2, 0.1 
3, 0.6 

可能只有熊貓或標準庫。

回答

1

我認爲你可以使用factorize,如:

print df 
      a  b 
0 'John' 0.25 
1 'Mary' 0.20 
2 'Mary' 0.20 
3 'Adam' 0.10 
4 'Adam' 0.10 
5 'Adam' 0.10 
6 'Andrew' 0.60 

print pd.factorize(df.a) 
(array([0, 1, 1, 2, 2, 2, 3]), 
Index([u''John'', u''Mary'', u''Adam'', u''Andrew''], dtype='object')) 

df['a'] = pd.factorize(df.a)[0] 
print df 

    a  b 
0 0 0.25 
1 1 0.20 
2 1 0.20 
3 2 0.10 
4 2 0.10 
5 2 0.10 
6 3 0.60 
+0

纔有可能推廣到哪裏,我不知道有多少唯一值我有這樣的? – Bob

+0

我嘗試添加新行,請檢查,如果我正確理解您的問題。 – jezrael