我有两列。第一列较长,有多个值,例如:
0 'A' 1 'B' 2 'B' 3 'C' 4 'A' 5 'A'
第一列中的所有值都列在第二列中:
0 'A' 1 'B' 2 'C'
我想要的结果是,第一列中的值在第二列中有一个列表/系列/列,无论索引如何,如下所示:
0 'A' 0 1 'B' 1 2 'B' 1 3 'C' 2 4 'A' 0 5 'A' 0
编辑:在实际的问题中,我的值的数量非常大,所以手工列出它们不是一个选择
v6ylcynt1#
与Pandas合作系列:
new_s = s1.map(dict(zip(s2, s2.index)))
nimxete22#
如果两列都是Dataframe:试试这个:
maper = dict(df2.reset_index().values[:, ::-1]) out = df1.assign(result=df1.replace(maper)) print(out)
2条答案
按热度按时间v6ylcynt1#
与Pandas合作系列:
nimxete22#
如果两列都是Dataframe:
试试这个: