我正在嘗試根據其他列的值在以下 Pandas DataFrame 中創建一個新列“Var”。我用打交道時遇到的問題NaN,NaT。
資料:
(用于apply(pd.to_datetime)對Date在上一步中列)
| 日期 | C | 一種 | 年齡 |
|---|---|---|---|
| 2017-12-13 | 1233.0 | N | 9 |
| 鈉鹽 | NaN | N | 5 |
| 2007-09-24 | 49.0 | N | 14 |
代碼:
def program(Flat):
if Flat['A'] == 'N' :
return 0
elif Flat['Date'].isna() :
return Flat['Age'] 1
elif Flat['C'] < 365 :
return 1
elif Flat['C'] >= 365 :
return math.floor((Flat['C'])/365.25) 1
Flat['Var'] = Flat.apply(program, axis=1)
錯誤:AttributeError:'NaTType' 物件沒有屬性 'isna'
嘗試通過 Anaconda 和 Python 運行。都是一樣的錯誤。熊貓版本是 1.3.3。
檢測NaT型別的正確方法是什么?
uj5u.com熱心網友回復:
“NaT”(用于日期/時間型別)和“NaN”不一樣。但是,您可以對這兩種型別使用“isnull”函式:
elif pd.isnull(Flat['Data']):
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/317954.html
下一篇:將主要游戲回圈轉化為功能
