我正在使用数据框,我希望更改国家/地区列中的条目,例如:
'玻利维亚(多民族国)'应该是玻利维亚' ,
' Switzerland17'应该是'瑞士'
我定义了以下功能:
def process(w):
for i in range(len(w)):
if w[i] in ['(', ')', '0', '1', '2', '3', '4', '5', '6', '7', '8', '9', '&', '/']:
w = w[0:i]
w = ''.join(w).replace(" ", "")
break
return w
然后我使用python apply 函数将其应用于数据框。
energy['Country'] = energy['Country'].apply(process)
虽然我已经能够达到所需的输出,但这并不完全正确。一些条目如
大不列颠及北爱尔兰联合王国和美利坚合众国20 已更改为 UnitedKingdomofGreatBritainandNorthernIreland 和 UnitedStatesofAmerica 。
我做错了什么?还有什么是更有效,更简洁的代码来实现结果?
答案 0 :(得分:0)
我可能会遗漏一些东西,但看起来像是
replace(" ", "")
将删除空格,这正是UnitedStatesofAmerica所发生的事情