我有这样一个 Dataframe :
name: othercol: col1: col2: col3: other_col:
aa 100 cc a, NaN 42
bb 100 a, NaN a, 100
我想将所有列连接在一起(col1、col2、col3),用逗号分隔。除非他们已经有了逗号,我不想在结尾加逗号。
预期成果:
name: othercol: col1: col2: col3: other_col: output:
aa 100 cc a, NaN 42 cc, a
bb 100 a, NaN a, 100 a, a
我尝试过使用这种方法:
listy = ['col1', 'col2', 'col3', ']
df['output'] = df[listy].apply(lambda i: ', '.join(i[i.notnull()]) if str(i[:-1]) != ',' else ' '.join(i[i.notnull()]), axis = 1)
但我得到了重复的逗号:
name: othercol: col1: col2: col3: other_col: output:
aa 100 cc a, NaN 42 cc, a
bb 100 a, NaN a, 100 a,, a
1条答案
按热度按时间7jmck4yq1#
在您的代码行下添加此项,它将为您提供所需的结果: