You should certainly not convert to string before you transform the list. Try:
df['col'].apply(', '.join)
Also note that apply
applies the function to the elements of the series, so using df['col']
in the lambda function is probably not what you want.
Or, there is a native .str.join
method, but it is (surprisingly) a bit slower than apply
.