我有一个包含两列的数据框
iconv('utf-8', 'utf-8//IGNORE',$str);
我想以这种格式从行中获取数据
countries data
United states of america(USA) 1
india13 2
简而言之,我想按括号和数字过滤索引。如果它包含其中之一,那么我想从行标签中删除括号和数字。我该怎么做?
答案 0 :(得分:4)
使用str.extract,正则表达式从字符串中提取所有字母,直到遇到括号
df.countries = df.countries.str.extract('([A-Za-z ]+)\(?', expand = False)
countries data
0 Unites states of america 1
1 india 2
答案 1 :(得分:1)
您可以使用str.replace
来删除数字和括号以及其中的文本:
df.loc[:,'countries'] = df.countries.str.replace(r'[0-9]|\(.*\)','', regex=True)
countries data
0 Unites states of america 1
1 india 2