>>> df
c1 c2 P1
0 10.0 20.0 1
1 NaN 40.0 2
2 50.0 NaN 3
3 NaN NaN 4
4 60.0 70.0 5
5 NaN NaN 6
>>>
>>>
>>> cols = ["c1" , "c2"]
>>>
>>> df[df[cols[0]].notnull() | df[cols[1]].notnull()]
c1 c2 P1
0 10.0 20.0 1
1 NaN 40.0 2
2 50.0 NaN 3
4 60.0 70.0 5
如上所示,我正在执行一个逻辑,我想保留至少有一个非NaN值的行。
问题在于列表中可能有很多列,例如可能有100个或更多。那么如何以Pythonic的方式执行此逻辑呢?
c2
中的第一个值是NaN
,会发生什么? - jezrael