Pandas 如何填写NaN将持续的值?

Pandas 如何填写NaN将持续的值?,pandas,Pandas,例如: arr = ['a', np.nan, np.nan, 'b', np.nan, 'a', np.nan, np.nan] 假设我想向前填充,所以我得到['a','a','a','b','b','a','a','a'] 我尝试过使用fillna(method='ffill),但这只是用一个静态值(即0)填充。我看不到使用最后一个有效值的选项 如果我使用ffill(),它适用于我的数组有一个非nan值的情况。但是,当我使用不同值的数组时,列中似乎没有任何变化 我想用最后一个非nan值进行

例如:

arr = ['a', np.nan, np.nan, 'b', np.nan, 'a', np.nan, np.nan]
假设我想向前填充,所以我得到
['a','a','a','b','b','a','a','a']

我尝试过使用
fillna(method='ffill)
,但这只是用一个静态值(即0)填充。我看不到使用最后一个有效值的选项

如果我使用
ffill()
,它适用于我的数组有一个非nan值的情况。但是,当我使用不同值的数组时,列中似乎没有任何变化

我想用最后一个非nan值进行正向填充。我该怎么做?


ffill
是您需要的函数,也许您只是忘记了指定inplace=True

ffill()
才是您真正需要的。您是否尝试过
pd.Series(arr.ffill()
?看起来pandas正在将我的nan值转换为字符串“nan”。例如,我有一行代码df['last_event']=np。尽管我将默认设置为np.nan,但当我查看数据时,它显示为“nan”。我怎样才能阻止这种行为?