如何将1列映射到2列?
数据混乱,对于某些行,有id名称而不是id。 我可以创建一个新的REF表以将这些id_names替换为id,问题是太多了。
Reff表
google =
id id_name cost
154 campaign1 15
155 campaign2 12
1566 campaign33 12
158 campaign4 33
数据
cw =
id
154
155
campaign1
campaign33
1566
158
campaign4
所需的输出
cw =
id cost
154 15
155 12
campaign1 15
campaign33 12
1566 12
158 33
campaign4 33
我做了什么。
# Just work for one column
cw['cost'] = cw['id'].map(google.set_index('id')['cost'])
答案 0 :(得分:1)
您可以melt
并映射:
map_series = google.melt(id_vars='cost').set_index('value')['cost']
cw['cost'] = cw['id'].map(map_series)