我对循环字典的性能有疑问,因为我的字典数据很大。这是我的代码的一个小例子:
df = pd.DataFrame({'i': [1,2,3], 'old_col':['holly chicken','holly pen', 'holly']})
some_dict = {'.*chicken.*' : 'animal', '.*pen.*' : 'stuff'}
for k,v in some_dict.items():
df.loc[df.old_col.str.contains(k),'new_col'] = v
输出为:
df.new_col
0 animal
1 stuff
2 NaN
Name: new_col, dtype: object
有什么方法可以提高性能,可能是对其进行矢量化还是不使用循环?