获取每列的最新非NA值

时间:2020-03-16 17:37:54

标签: python dataframe filter nan

我有一个存储在数据帧中的时间序列,想提取每列的最新非NAN值并将其存储在单行数据帧中。

所以我的datraframe如下所示:

data={  'col1' : [np.nan,np.nan,3], 'col2' : [1,np.nan,np.nan],'col3' : [np.nan,3,np.nan]}
df = pd.DataFrame(data,index=pd.bdate_range(start='01.01.2020',end='01.05.2020'))

我想要的输出应该是……。喜欢:

   col1  col2 col3
0     3     1    3

1 个答案:

答案 0 :(得分:0)

使用列级上的应用,过滤非空条目并提取每个过滤后列的最后一个元素即可得出结果。

df.apply(lambda x: x[x.notnull()].values[-1])