Abomasnow Grass Ice 494 90 92 75 92 85 60
AbomasnowMega Abomasnow Grass Ice 594 90 132 105 132 105
Abra Psychic Psychic 310 25 20 15 105 55
Absol Dark Dark 465 65 130 60 75 60 75
AbsolMega Absol
我有一个像这样的数据框,其中有一些脏索引值。例如:我需要更改 AbomasnowMega Abomasnow
的值至Mega Abomasnow
与其他此类事件类似,即我需要在任何有单词 Mega
的地方执行此操作。我该怎么做?
最佳答案
这里有一个选项,您可以将 .str.replace()
方法与正则表达式一起使用,使用 .*(?=Mega)
,它将删除之前的所有字符字符串中的最后一个 Mega,如果您不熟悉 regex
,.*
会贪婪地匹配所有字符,?=
是前瞻语法,它直接将匹配模式限制在 Mega
前面:
df.index = df.index.str.replace(".*(?=Mega)", "")
df.index
# Index(['Abomasnow', 'Mega Abomasnow', 'Abra', 'Absol', 'Mega Absol'], dtype='object', name=0)
关于python - 如何清理pandas数据框中的索引值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41701523/