小编alp*_*nis的帖子

从Pandas DataFrame中选择有限值的最新索引的有效方法?

我正在尝试找到最近的索引,其值不是相对于当前索引的"NaN".所以,假设我有一个带有'NaN'值的DataFrame,如下所示:

       A       B       C
0    2.1     5.3     4.7
1    5.1     4.6     NaN
2    5.0     NaN     NaN
3    7.4     NaN     NaN
4    3.5     NaN     NaN
5    5.2     1.0     NaN
6    5.0     6.9     5.4
7    7.4     NaN     NaN
8    3.5     NaN     5.8
Run Code Online (Sandbox Code Playgroud)

如果我目前在索引4,我有值:

       A       B       C
4    3.5     NaN     NaN
Run Code Online (Sandbox Code Playgroud)

我想知道'B'相对于索引4的最后已知值,它在索引处1:

       A       B       C
1    5.1   -> 4.6    NaN
Run Code Online (Sandbox Code Playgroud)

我知道我可以使用以下内容获取所有具有NaN值的索引的列表:

indexes = df.index[df['B'].apply(np.isnan)]
Run Code Online (Sandbox Code Playgroud)

但是在大型数据库中这似乎效率低下.有没有办法tail只相对于当前指数的最后一个?

python numpy dataframe pandas

4
推荐指数
2
解决办法
119
查看次数

标签 统计

dataframe ×1

numpy ×1

pandas ×1

python ×1