So my question is similar to this one. Mine is different because I have different length lists on the same row and columns.
Many of the solutions I have tried produce a very long dataframe with multiple repeats. My requirements are row wise meaning if a row has a list it is split into the required number of rows but it does not lead to multiple repeats. Please see below example.
Input example
import pandas as pd
df = pd.DataFrame(
{'C1': [["A","B"], ["C"], ["D","E"], ["F"]],
'C2': [[1], [2], [3], [4]],
'C3': ['s1', 's2', 's3', 's4'],
'C4': [123, 321, [777,111], 145]})
df
Desired output example
I have been playing around with explode(), reset_index(), drop() and more but have not been able to get anything to give the correct output yet.
One thing I tried was this
df = df.explode("C1").reset_index().drop("index",1).explode("C4").reset_index().drop("index",1)
But output was wrong


