将不同列中的数据连接成一个列(pandas,python)

我正在寻找逻辑来连接许多列中的值与从.xlsx文件中的相关数据到使用Python中的pandas的单个列。 组合每个不同列的逻辑将根据列包含的信息而不同。 例如:

input: ID,when_carpool,smoking,vehicle,passengers 0,weekdays,yes,truck,3 1,weekends,no,sedan,4 2,weekdays,no,van,6 3,weekdays,no,van,5 4,weekends,yes,sedan,3 

我有成千上万的这些行要处理,请注意,我想转换“吸烟”列的值,所以它不是所有列的简单连接。

 output: ID,carpool_info 0,weekdays+smoking+truck+3 1,weekends+nonsmoking+sedan+4 2,weekdays+nonsmoking+van+6 3,weekdays+nonsmoking+van+5 4,weekends+smoking+sedan+3 

将所有列join一个新列:

  df["carpool_info"] = df.apply(lambda x: "+".join([str(x[i]) for i in range(len(x))]),axis=1) 

然后删除不需要的其他列(另请参阅: 从pandas DataFrame删除列 ),或者仅使用carpool_Info = df [“carpool_info”]