从熊猫数据框中的字符串中删除运动员和数字

时间:2018-09-29 15:18:35

标签: python pandas

在我的专栏中,我有几个国家/地区名称,其中包含要删除的数字和/或括号。

我的df,

   city
0  Bolivia (Plurinational State of)
1  Switzerland17

预期输出df,

   city
0  Bolivia
1  Switzerland

2 个答案:

答案 0 :(得分:1)

df=pd.DataFrame({'city':['Bolivia (Plurinational State of)','Switzerland17']})
df['city']=df['city'].str.extract(r'([a-zA-Z]+)',expand=True)
print(df)
    city
0   Bolivia
1   Switzerland

答案 1 :(得分:0)

您可以结合使用replace和正则表达式:

import pandas as pd

df = pd.DataFrame({'city': ['Bolivia (Plurinational State of)', 'Switzerland17']})
df['city'] = df['city'].replace(to_replace='\(.+\)|\d+', value='', regex=True).str.strip()

for e in df['city']:
    print(e)

输出

Bolivia
Switzerland

您还可以删除结尾的空格(str.strip())。