Time A B C D E F G H I K
2019-06-17 08:45:00 12089.89 12089.89 12087.71 12087.71 0.026626 2495.595 2495.595 2486.095 2488.095 0.000705
2019-06-17 08:46:00 12087.91 NaN 12087.71 12087.91 0.023684 2489.095 2490.095 2486.095 2486.095 0.000613
2019-06-17 08:47:00 12088.21 12088.21 12084.21 12085.21 0.028582 2487.095 2487.595 2485.095 2486.095 0.000516
2019-06-17 08:48:00 12085.09 12090.21 12084.91 12089.41 0.033238 2485.095 2485.595 2485.095 2485.095 0.000108
2019-06-17 08:49:00 12089.71 12090.21 12087.21 12088.21 0.033204 2484.095 2484.095 2484.095 2484.095 0.000010
... ... ... ... ... ... ... ... ... ...
2019-07-08 23:03:00 12504.11 12504.11 12504.11 12504.11 0.000734 NaN NaN NaN NaN NaN
2019-07-08 23:04:00 12504.11 NaN 12503.11 12503.11 0.002394 NaN NaN NaN NaN NaN
2019-07-08 23:08:00 12504.11 12504.11 12503.11 12503.11 0.002294 NaN NaN NaN NaN NaN
2019-07-08 23:09:00 12503.61 12503.61 12503.61 12503.61 0.000734 NaN NaN NaN NaN NaN
2019-07-08 23:10:00 12503.61 12503.61 12503.11 12503.11 0.002294 NaN NaN NaN NaN NaN
В таком фрейме данных: как получить расположение всех строк, содержащих NaN? (где НЕ вся строка равна NaN, но хотя бы одно NaN) После этого они очищаются .ffill (), но позже мне нужно снова установить эти c индексы NaN.
#1. select the df without the columns that are Full-NaN
df2 = df.dropna(how='All')
#2. select the indices of the still NaN containing rows.
indices = ???
#3. filling
df2.fillna(method="ffill")
#4. irrelevant manipulation and extraction stuff
#...
#5. set the NaNs back to where they were.
# df[indices] = ...