如果最后一行是 nan,我如何删除一列

JPW*_*son 8 python pandas

我找到了如何根据全部或阈值删除列的示例,但我无法找到解决我的特定问题的解决方案,即如果最后一行是 nan 则删除该列。这样做的原因是我使用时间序列数据,其中数据的收集不会同时开始,这很好,但是如果我使用以前的解决方案之一,它将删除 95% 的数据集。然而,我不想要最近一列是 nan 的数据,因为这意味着它已经不存在了。

A B C
nan t x 
1 2 3
x y z
4 nan 6
Run Code Online (Sandbox Code Playgroud)

退货

A C
nan x
1 3
x z
4 6
Run Code Online (Sandbox Code Playgroud)

Aga*_*ain 5

你也可以做这样的事情

df.loc[:, ~df.iloc[-1].isna()]
Run Code Online (Sandbox Code Playgroud)
    A   C
0   NaN x
1   1   3
2   x   z
3   4   6
Run Code Online (Sandbox Code Playgroud)