2016-06-07 50 views
1

我正在處理一個數據幀,其中所有值均爲無的列。默認情況下,此列的dtype是對象。我需要它是一個整數類型,可能是int64。爲什麼不相關;這就是我需要的。如何將dtype強制爲數據幀中的整數

我已經試過如下:

df['field'] = df['field'].astype(int) 

這是行不通的。錯誤是:

ValueError: Cannot convert NA to integer

insert_data['data_set_key'] = pd.to_numeric(insert_data['data_set_key'], errors='coerce') 

此轉換D型到float64這根本不是我lookign了。

附錄:

數據幀正在由SQL鍊金填充一個表在Oracle數據庫中。該表具有目前未填充的整數字段。數據框中的字段用None加載,然後有一個dtype的對象。當這個數據被加載時,似乎被解釋爲一個CLOB類型,並且Oracle自身也在吞噬着它。如果我將None更改爲1,它可以正常工作。但這不是一種選擇。

回答

1

有一件事我沒有嘗試,因爲它不應該工作,實際上是答案。將np.NaN替換爲None將導致表在所需字段中填充NULL。

相關問題