How do I iterate over a dataframe like the following and return the non-NaN value locations as a tuple. i.e.
df:
0 1 2
0 NaN NaN 1
1 1 NaN NaN
2 NaN 2 NaN
I would get an output of [(0, 1), (2, 0), (1, 2)]. Would the best way be to do a nested-for loop? Or is there an easier way I'm unaware of through Pandas.
Best Answer
Assuming you don't need in order, you could stack the nonnull values and work on index values.
Furthermore, using stack method,
NaN
are ignored anyway.