我有一个像“Voice_DropRate_4G(%)”这样的列值,所以我需要在数据框中这样,只需从所有列名称中删除这个“(%)”,我还想替换大写字母在数据框中使用小写字母作为最终结果 voice_droprate_4g
因为我尝试使用此行通过使用 Replace
函数(如下面的代码)删除不需要的字符..
dft.columns = dft.columns.str.replace('(%)', '')
但它并没有删除括号,它向我展示了这样的“Voice_DropRate_4G()”,所以任何人都知道如何解决这个问题....
谢谢...
最佳答案
因为 ()
是特殊的正则表达式字符,您需要通过 \
对其进行转义,然后将值转换为小写:
dft.columns = dft.columns.str.replace('\(%\)', '').str.lower()
示例:
dft = pd.DataFrame(columns=['Voice_DropRate_4G(%)','Voice_DropRate_5G(%)'])
dft.columns = dft.columns.str.replace('\(%\)', '').str.lower()
print (dft)
Empty DataFrame
Columns: [voice_droprate_4g, voice_droprate_5g]
Index: []
关于python - 如何从pandas数据框中删除带括号的特殊字符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59422619/