我有一个Pandas 数据框,如下所示:
import pandas as pd
nan = float('nan')
data = {'col1': [1, nan, nan, nan, nan, 1, nan, nan],
'col2': [1, 1, nan, 1, 0, 0, 1, 0],
'col3': [nan, 0, nan, 1, 0, nan, nan, nan],
'col4': [1, 0, 0, 1, 0, 1, 1, 1]}
DF = pd.DataFrame(data)
DF
|col1| |col2| |col3| |col4|
| 1 | | 1 | | NaN| | 1 |
|NaN | | 1 | | 0 | | 0 |
|NaN | | NaN| | NaN| | 0 |
|NaN | | 1 | | 1 | | 1 |
|NaN | | 0 | | 0 | | 0 |
| 1 | | 0 | | NaN| | 1 |
|NaN | | 1 | | NaN| | 1 |
|NaN | | 0 | | NaN| | 1 |
我想计算每一列的连续空值(NaN)的数量,如果连续空值超过两个,我想得到它的最大值.
For the above DF, I would get:
DF_nulls = ['col1': 4, 'col2': 0, 'col3': 3, 'col4': 0]
根据上述结果,应删除连续两个以上为空值的列.在这种情况下,最终数据帧应该只包含COL2和COL4. 我找到了类似的帖子,但没有一个解决了上面的问题. 我如何解决这个问题?先谢谢你.