a = [[y for y in x if pd.notna(y)] for x in df.values.tolist()] print (a) [['str', 'aad', 'asd'], ['ddd'], ['xyz', 'abc'], ['btc', 'trz', 'abd']]