如何从 Pandas 的索引中删除括号“( )”? [复制]
Posted
技术标签:
【中文标题】如何从 Pandas 的索引中删除括号“( )”? [复制]【英文标题】:how can I remove a parentheses "( )" from an Index with Pandas? [duplicate] 【发布时间】:2020-08-14 02:30:37 【问题描述】:我有这样的输出:
Vanuatu 22 10
Venezuela(Bolivarian Republic of) 32 10
Viet Nam 44 05
我想要这样的东西:
Vanuatu 22 10
Venezuela 32 10
Viet Nam 44 05
想象一下我的数据框太长了,比如 500 个索引。 如何将其从我的 DF 中的所有内容中删除?
【问题讨论】:
见How to remove parentheses and all data within using Pandas/Python? 【参考方案1】:我想,这正是你要找的:
import re
df['column_name'] = df['column_name'].str.replace(r'\([^)]*\)', '')
【讨论】:
【参考方案2】:数据
data = pd.DataFrame('Name':['Vanuatu', 'Venezuela(Bolivarian Republic of)','Viet Nam' ])
使用正则表达式调用和替换括号和括号本身之间的任何内容
df['Name']=df.Name.str.replace('\(+[A-Za-z|\s+\)]+','')
df
解释
\(
- 特殊字符(
+
匹配左边的任何东西
A-Za-z
匹配任何大小写字母
|
或
\s
空格
+
匹配左边的任何东西
\)
特殊字符)
组合[A-Za-z|\s+\)]
+ 匹配任何大小写或左边的空格
【讨论】:
以上是关于如何从 Pandas 的索引中删除括号“( )”? [复制]的主要内容,如果未能解决你的问题,请参考以下文章
使用 str.replace 从 pandas 中的字符串中删除括号
pandas使用iloc函数基于dataframe数据列的索引抽取单列或者多列数据其中多列索引需要嵌入在列表方括号[]中或使用:符号形成起始和终止范围索引