Python 获取每列的最新非NA值
我有一个存储在数据帧中的timeseries,并且希望提取每列的最新非NAN值,并将其存储在单行数据帧中 因此,我的datraframe如下所示:Python 获取每列的最新非NA值,python,dataframe,filter,nan,Python,Dataframe,Filter,Nan,我有一个存储在数据帧中的timeseries,并且希望提取每列的最新非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')) 我想
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
在列级别上使用apply,过滤非空条目并提取每个过滤列的最后一个元素,即可得到结果
df.apply(lambda x: x[x.notnull()].values[-1])
到底是什么问题?你试过什么,做过什么研究吗?Stack Overflow不是免费的代码编写服务,也不是为了提供个性化的指南和教程。请看:,。这是否回答了您的问题?因为我对python比较陌生,所以我可能搜索了错误的关键字。然而,我的问题有一个可重复的例子,应该有助于澄清。我不需要位置,但需要价值本身。