正则表达式Sub和Pandas

我正在努力用字典中的数据替换熊猫细胞中的字符串。我有一个熊猫框:

import pandas as pd
import numpy as np
import re

f = {'GAAP':['<1>','2','3','4'],'CP':['5','6','<7>','8']}
filter = pd.DataFrame(data=f)
filter

和字典:

d = {'GAAP':['100','101'],'CP':['500','501','502']}
d

我正在尝试获得以下输出:

op = {'GAAP':['100|101','2','3','4'],'CP':['5','6','500|501|502','8']}
op = pd.DataFrame(data=op)
op  

我尝试了类似的东西:

def rep1(fr,di):
op=re.sub('\<.*?\>',fr,di)
return(op)


a='|'.join(d['GAAP'])
op=rep1(filter['GAAP'],a)
op

但是收到一个错误消息,说序列对象是可变的,不能被散列。关于我做错什么的任何建议?