I have a dataframe with multiple slimier columns to marge
ID   col0    col1   col2   col3   col4   col5
1    jack    in A   A jf    w/n    y/h    56
2    sam     z/n    b/w      A     A      93
3    john    e/e    jg      b/d    A      33
4    Adam    jj     b/b     b/d    NaN    15
What I want now is to merge the column with A to be like this
ID   col0    col1   col2   col3   col4      A         col5
1    jack    in A   A jf    w/n    y/h  in A - A jf    56
2    sam     z/n    b/w     A n     A     A n - A      93
3    john    e/e    jg      b/d    A        A          33
4    Adam    jj     b/b     b/d    NaN     NaN         15
I tried the first solution in here Is there a python way to merge multiple cells with condition yet the result ended up missing info:
ID   col0    col1   col2   col3   col4      A         col5
1    jack    in A   A jf    w/n    y/h  in A - A jf    56
2    sam     z/n    b/w     A n     A      NaN         93
3    john    e/e    jg      b/d     A       A          33
4    Adam    jj     b/b     b/d    NaN     NaN         15
Can any one figure what is not not working with this line
s = df.filter(regex=r'col[1-4]').stack()
s = s[s.str.contains('A')].groupby(level=0).agg(' - '.join)
df['A'] = s
 
    