2014-10-16 120 views
1

我開發了一個獨立於腳本的函數。我運行該腳本將函數放置在我的名稱空間中。代碼行我有一個工作的罰款是:全局名稱'inf'未定義

df.my_variable.replace([inf, -inf, nan, NaN], 0, inplace=True) 

現在我已經搬到這個功能到mymodule.py。然後我嘗試運行它:

import mymodule as mm 
mm.myfun() 

的代碼行替換inf等,現在引發以下錯誤:

global name 'inf' is not defined 

我敢肯定,這是在交互開發的遺留問題IPython,但我難以理解如何定義inf來完成這項工作。

+0

在模塊的開頭嘗試'from numpy impport inf' – greole 2014-10-16 10:09:51

+0

您可以添加myfun()的完整代碼嗎? – Ohumeronen 2014-10-16 10:10:38

回答

4

試試這個:

from numpy import inf 
+0

*感覺愚蠢*清楚忘記IPython自動導入內容的危險。感謝您的及時回覆! – BMichell 2014-10-16 10:43:26

1

inf在numpys命名空間中定義,所以,如果你只是

from numpy import inf 

複製原始腳本的一部分,你可能忘記從numpy的導入此。熊貓在內部使用了很多numpys功能