如何为pandas数据框架中的每一行映射/替换列中的多个值



我有这个样本

col1    result
1          A
1,2,3   
2          B
2,3,4   
3,4 
4          D
1,3,4   
3          C

这是我的地图变量。vals_to_replace = {' 1 ': ' A ', ' 2 ': ' B ', ' 3 ': ' C ', ' 4 ': ' D '}我将其映射到col1,并且只从col结果中获取一些值,不确定为什么只映射单个值。

对于如何解决它有什么想法吗?

感谢

也许这对你有用:

import pandas as pd
df = pd.DataFrame({'col1': ['1', '1,2,3', '2', '2,3,4', '3, 4', '4', '1,3,4', '3']})
translation = {'1':'A', '2':'B', '3':'C' , '4':'D'}
df['result'] = df.col1.str.translate(str.maketrans(translation))
print(df)

结果:

col1 result
0      1      A
1  1,2,3  A,B,C
2      2      B
3  2,3,4  B,C,D
4   3, 4   C, D
5      4      D
6  1,3,4  A,C,D
7      3      C

相关内容

  • 没有找到相关文章

最新更新