我的 df 有 200 多列。一些列名包含特殊字符,例如:() []
我需要将所有 3 个替换为 _
。我还需要替换空格...这是我的代码:
import pandas as pd
df = pd.read_csv('./pred_results.csv')
df.columns = df.columns.str.replace(r"[()]", "_")
使用上面的代码,我只能替换 ()
最佳答案
你可以使用
df.columns = df.columns.str.replace(r"[][() ]", "_", regex=True)
df.columns = df.columns.str.replace(r"[][() ]+", "_", regex=True)
第一行将每个单独的 ]
、[
、(
、)
和空格替换为 _
.
第二行将替换后面的一大块 ]
、[
、(
、)
和空格字符使用单个 _
。
关于python - 替换所有列 pandas df 中的多个字符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/66973229/