将不同列中的数据连接成一个列(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”]