首页 > 解决方案 > 将 pandas 数据框中的值组合为字符串

问题描述

我有一个类似于这样的数据框:

       Male  Over18  Single
0     0       0       1
1     1       1       1
2     0       0       1

我想要一个额外的列,它会得到一个逗号分隔的字符串,其中列名的值为 1:

   Male  Over18  Single        CombinedString
0     0       0       1                Single
1     1       1       1  Male, Over18, Single
2     0       0       1                Single

希望有人可以提供帮助:)

标签: pythonpandasdataframe

解决方案


一种 pandaic 方法是使用列标题执行 pandas 点积:

df['CombinedString'] = df.dot(df.columns+',').str.rstrip(',')
df

   Male  Over18  Single      CombinedString
0     0       0       1              Single
1     1       1       1  Male,Over18,Single
2     0       0       1              Single

推荐阅读