1 回答

TA貢獻(xiàn)1811條經(jīng)驗(yàn) 獲得超4個贊
利用np.nan唯一不等于自身的對象這一事實(shí)。請注意,如果您的數(shù)組包含其他對象,則它們應(yīng)該定義相等運(yùn)算符,否則會引發(fā)錯誤。
tdarray = np.asarray([dt.timedelta(days=5), np.nan])
mask = tdarray == tdarray # This gives array([True, False])
tdarray[mask] = [x.days for x in tdarray[mask]]
# Optionally cast to float
tdarray = tdarray.astype(np.float64)
或者你可以簡單地重建陣列
tdarray = np.asarray([x.days if x == x else x for x in tdarray],
dtype=np.float64)
如果tdarray是 ND 數(shù)組 (N > 1) 那么
shape = tdarray.shape
tdarray = np.asarray([x.days if x == x else x
for x in tdarray.ravel()],
dtype=np.float64).reshape(shape)
添加回答
舉報