Numpy np.最大值。与nan值累加

Numpy np.最大值。与nan值累加,numpy,Numpy,似乎np.maximum.acculate函数不能很好地处理nan import numpy as np arr = np.array([1,np.nan,3,1]) np.maximum.accumulate(arr) 给出第2个元素后的所有NaN 如何获得结果[1,np.nan,3,3]?使用,忽略nans: arr = np.array([1,np.nan,3,1]) np.fmax.accumulate(arr) # array([1., 1., 3., 3.]) np.wher

似乎
np.maximum.acculate
函数不能很好地处理nan

import numpy as np

arr = np.array([1,np.nan,3,1])
np.maximum.accumulate(arr)
给出第2个元素后的所有NaN

如何获得结果
[1,np.nan,3,3]

使用,忽略
nan
s:

arr = np.array([1,np.nan,3,1])

np.fmax.accumulate(arr)
# array([1., 1., 3., 3.])
np.where(np.isnan(arr), np.nan, np.fmax.accumulate(arr))
# array([ 1., nan,  3.,  3.])
如果需要保留
nan
s:

arr = np.array([1,np.nan,3,1])

np.fmax.accumulate(arr)
# array([1., 1., 3., 3.])
np.where(np.isnan(arr), np.nan, np.fmax.accumulate(arr))
# array([ 1., nan,  3.,  3.])