我正在寻找一种从数据列中删除特定元素的有效方法。
我有这样的数据:
year
1 (1991)
10 (1991-2001)
8 (1991-1998)
2 (2000-2002)
我想成为这样:
year
1991
1991 - 2001
1991 - 1998
2000 - 2002
我想删除括号之前和之后的括号和元素。
最佳答案
使用正则表达式:
使用pandas.Series.str.extract
正则表达式:\((.*)\)
提取()
之间的内容
df = pd.DataFrame({'year': ['1 (1991)', '10 (1991-2001)', '8 (1991-1998)', '2 (2000-2002)']})
year
1 (1991)
10 (1991-2001)
8 (1991-1998)
2 (2000-2002)
df['year'] = df['year'].str.extract(r'\((.*)\)')
year
1991
1991-2001
1991-1998
2000-2002
关于python - 如何仅提取括号之间的字符串成分?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/58360149/