2017-06-13 60 views
0

我與一個數據幀的工作,不幸進口列「ID」的格式如下:7.350943 + E蟒蛇:改變數據類型,包括0.0

我想我的固定與此代碼的問題:

pd.set_option('display.float_format', lambda x: '%3.f' % x) 

但是,這隻能修復顯示,在後端它仍然以這種科學格式。

當我嘗試基於列的ID和列源來創建一個新的專欄中,我得到如下:

df['Primary_key']=df['ID'].apply(str)+'_'+df['Source'] 

Name  ID  Source  Primary_key 
John 782857635 email  782857635.0_email 

我需要爲了數據類型更改爲擺脫的是什麼格式。 0?

df['ID'].values 
array([782929635.0, 783063368.0, 782960457.0, ..., 783257941.0, 
     783535550.0, nan], dtype=object) 

我試圖取代它,在主鍵,但它沒有工作(沒有變化數據框)

df['Primary_key']= df['Primary_key'].str.strip().replace(".0_","_") 

回答

1

我想你應該嘗試這樣的:

df['ID'] = df['ID'].apply(str).strip().replace(".0","") 
1

int()是你似乎正在尋找。

[int(i) for i in whateverList]