python:是否可以使用字符串dataframe映射值?

python:是否可以使用字符串dataframe映射值?,python,pandas,dictionary,Python,Pandas,Dictionary,我试图在两个数据帧之间映射数据(数据来自使用pandas的csv文件),但我遇到了索引问题 第一个df是df1 0 CAT11/06 1 CAT11/100 2 CAT23/223 3 CAT33/14 4 CAT13/14 5 DOG12/04 6 DOG24/14 7 CAT24/112 第二个df是df2 0 CAT1 3 CAT2 4 C

我试图在两个数据帧之间映射数据(数据来自使用pandas的csv文件),但我遇到了索引问题

第一个df是df1

0         CAT11/06
1         CAT11/100
2         CAT23/223
3         CAT33/14
4         CAT13/14 
5         DOG12/04 
6         DOG24/14
7         CAT24/112
第二个df是df2

0    CAT1
3    CAT2
4    CAT3
5    DOG1
6    DOG2
我想创建一个新的数据框架来收集像这样的预期数据,并将其定义为df3

0  CAT1 CAT11/06 | CAT11/100 | CAT13/14
1  CAT2 CAT23/223 | CAT24/112
2  CAT3 CAT33/14
3  DOG1 DOG12/04
4  DOG2 DOG24/14

连接中使用两个for循环

df2['col2']=['|'.join(df1[[x in y for y in df1]].tolist()) for x in df2.col1]
df2
Out[347]: 
   col1                         col2
0  CAT1  CAT11/06|CAT11/100|CAT13/14
3  CAT2          CAT23/223|CAT24/112
4  CAT3                     CAT33/14
5  DOG1                     DOG12/04
6  DOG2                     DOG24/14

谢谢您的帮助,但我发现了错误->AttributeError:“list”对象没有属性“tolist:”(@Sungjin您的df1是list?